﻿<?xml version="1.0" encoding="utf-8"?><Type Name="TextElementEnumerator" FullName="System.Globalization.TextElementEnumerator"><TypeSignature Language="C#" Value="public class TextElementEnumerator : System.Collections.IEnumerator" /><TypeSignature Language="ILAsm" Value=".class public auto ansi serializable beforefieldinit TextElementEnumerator extends System.Object implements class System.Collections.IEnumerator" /><AssemblyInfo><AssemblyName>mscorlib</AssemblyName><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><Base><BaseTypeName>System.Object</BaseTypeName></Base><Interfaces><Interface><InterfaceName>System.Collections.IEnumerator</InterfaceName></Interface></Interfaces><Attributes><Attribute><AttributeName>System.Runtime.InteropServices.ComVisible(true)</AttributeName></Attribute></Attributes><Docs><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>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 a base character, a surrogate pair, or a combining character sequence. The <see cref="http://go.microsoft.com/fwlink/?linkid=37123">Unicode Standard</see> defines a surrogate pair as a coded character representation for a single abstract character that consists of a sequence of two code units, where the first unit of the pair is a high surrogate and the second is a low surrogate. The Unicode Standard defines a combining character sequence as a combination of a base character and one or more combining characters. A surrogate pair can represent a base character or a combining character. </para><para>Text element enumerators are intended to be used only to read data in the string. Enumerators cannot be used to modify the underlying string.</para><para>The enumerator does not have exclusive access to the string.</para><para>When an enumerator is created, it takes a snapshot of the current state of the string. Two enumerators created from the same string at the same time can have different snapshots of the string.</para><para>The enumerator is in an invalid state if it is positioned before the first text element in the string or after the last text element in the string. Whenever the enumerator is in an invalid state, calling <see cref="P:System.Globalization.TextElementEnumerator.Current" /> throws an exception.</para><para>Initially, the enumerator is positioned before the first text element in the string. <see cref="M:System.Globalization.TextElementEnumerator.Reset" /> also brings the enumerator back to this position. Therefore, after an enumerator is created or after a <see cref="M:System.Globalization.TextElementEnumerator.Reset" /> is called, <see cref="M:System.Globalization.TextElementEnumerator.MoveNext" /> must be called to advance the enumerator to the first text element of the string before reading the value of <see cref="P:System.Globalization.TextElementEnumerator.Current" />.</para><para><see cref="P:System.Globalization.TextElementEnumerator.Current" /> returns the same object until either <see cref="M:System.Globalization.TextElementEnumerator.MoveNext" /> or <see cref="M:System.Globalization.TextElementEnumerator.Reset" /> is called.</para><para>After the end of the string is passed, the enumerator is again in an invalid state and calling <see cref="M:System.Globalization.TextElementEnumerator.MoveNext" /> returns false. Calling <see cref="P:System.Globalization.TextElementEnumerator.Current" /> throws an exception if the last call to <see cref="M:System.Globalization.TextElementEnumerator.MoveNext" /> returned false.</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Enumerates the text elements of a string. </para></summary></Docs><Members><Member MemberName="Current"><MemberSignature Language="C#" Value="public object Current { get; }" /><MemberSignature Language="ILAsm" Value=".property instance object Current" /><MemberType>Property</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Object</ReturnType></ReturnValue><Docs><value>To be added.</value><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>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 a base character, a surrogate pair, or a combining character sequence. The <see cref="http://go.microsoft.com/fwlink/?linkid=37123">Unicode Standard</see> defines a surrogate pair as a coded character representation for a single abstract character that consists of a sequence of two code units, where the first unit of the pair is a high surrogate and the second is a low surrogate. The Unicode Standard defines a combining character sequence as a combination of a base character and one or more combining characters. A surrogate pair can represent a base character or a combining character. </para><para>After an enumerator is created or after a <see cref="M:System.Globalization.TextElementEnumerator.Reset" /> is called, <see cref="M:System.Globalization.TextElementEnumerator.MoveNext" /> must be called to advance the enumerator to the first text element of the string before reading the value of <see cref="P:System.Globalization.TextElementEnumerator.Current" />. Otherwise, <see cref="P:System.Globalization.TextElementEnumerator.Current" /> is undefined.</para><para><see cref="P:System.Globalization.TextElementEnumerator.Current" /> also throws an exception if the last call to <see cref="M:System.Globalization.TextElementEnumerator.MoveNext" /> returned false, which indicates the end of the string.</para><para><see cref="P:System.Globalization.TextElementEnumerator.Current" /> does not move the position of the enumerator, and consecutive calls to <see cref="P:System.Globalization.TextElementEnumerator.Current" /> return the same object until either <see cref="M:System.Globalization.TextElementEnumerator.MoveNext" /> or <see cref="M:System.Globalization.TextElementEnumerator.Reset" /> is called.</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Gets the current text element in the string.</para></summary></Docs><AssemblyVersion>2.0.0.0</AssemblyVersion></Member><Member MemberName="ElementIndex"><MemberSignature Language="C#" Value="public int ElementIndex { get; }" /><MemberSignature Language="ILAsm" Value=".property instance int32 ElementIndex" /><MemberType>Property</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Int32</ReturnType></ReturnValue><Docs><value>To be added.</value><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>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 a base character, a surrogate pair, or a combining character sequence. The <see cref="http://go.microsoft.com/fwlink/?linkid=37123">Unicode Standard</see> defines a surrogate pair as a coded character representation for a single abstract character that consists of a sequence of two code units, where the first unit of the pair is a high surrogate and the second is a low surrogate. The Unicode Standard defines a combining character sequence as a combination of a base character and one or more combining characters. A surrogate pair can represent a base character or a combining character. </para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Gets the index of the text element that the enumerator is currently positioned over.</para></summary></Docs><AssemblyVersion>2.0.0.0</AssemblyVersion></Member><Member MemberName="GetTextElement"><MemberSignature Language="C#" Value="public string GetTextElement ();" /><MemberSignature Language="ILAsm" Value=".method public hidebysig instance string GetTextElement() cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.String</ReturnType></ReturnValue><Parameters /><Docs><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>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 a base character, a surrogate pair, or a combining character sequence. The <see cref="http://go.microsoft.com/fwlink/?linkid=37123">Unicode Standard</see> defines a surrogate pair as a coded character representation for a single abstract character that consists of a sequence of two code units, where the first unit of the pair is a high surrogate and the second is a low surrogate. The Unicode Standard defines a combining character sequence as a combination of a base character and one or more combining characters. A surrogate pair can represent a base character or a combining character. </para><para>This method returns the same text element as the <see cref="P:System.Globalization.TextElementEnumerator.Current" /> property.</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Gets the current text element in the string.</para></summary><returns><attribution license="cc4" from="Microsoft" modified="false" /><para>A new string containing the current text element in the string being read.</para></returns></Docs><AssemblyVersion>2.0.0.0</AssemblyVersion></Member><Member MemberName="MoveNext"><MemberSignature Language="C#" Value="public bool MoveNext ();" /><MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance bool MoveNext() cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Boolean</ReturnType></ReturnValue><Parameters /><Docs><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>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 a base character, a surrogate pair, or a combining character sequence. The <see cref="http://go.microsoft.com/fwlink/?linkid=37123">Unicode Standard</see> defines a surrogate pair as a coded character representation for a single abstract character that consists of a sequence of two code units, where the first unit of the pair is a high surrogate and the second is a low surrogate. The Unicode Standard defines a combining character sequence as a combination of a base character and one or more combining characters. A surrogate pair can represent a base character or a combining character. </para><para>After an enumerator is created or after a <see cref="M:System.Globalization.TextElementEnumerator.Reset" /> is called, the enumerator is positioned before the first text element of the string, and the first call to <see cref="M:System.Globalization.TextElementEnumerator.MoveNext" /> moves the enumerator over the first text element of the string.</para><para>If the string is modified after this enumerator was created, <see cref="M:System.Globalization.TextElementEnumerator.MoveNext" /> throws an exception.</para><para>After the end of the string is passed, subsequent calls to <see cref="M:System.Globalization.TextElementEnumerator.MoveNext" /> return false until <see cref="M:System.Globalization.TextElementEnumerator.Reset" /> is called.</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Advances the enumerator to the next text element of the string.</para></summary><returns><attribution license="cc4" from="Microsoft" modified="false" /><para>true if the enumerator was successfully advanced to the next text element; false if the enumerator has passed the end of the string.</para></returns></Docs><AssemblyVersion>2.0.0.0</AssemblyVersion></Member><Member MemberName="Reset"><MemberSignature Language="C#" Value="public void Reset ();" /><MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance void Reset() cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Void</ReturnType></ReturnValue><Parameters /><Docs><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>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 a base character, a surrogate pair, or a combining character sequence. The <see cref="http://go.microsoft.com/fwlink/?linkid=37123">Unicode Standard</see> defines a surrogate pair as a coded character representation for a single abstract character that consists of a sequence of two code units, where the first unit of the pair is a high surrogate and the second is a low surrogate. The Unicode Standard defines a combining character sequence as a combination of a base character and one or more combining characters. A surrogate pair can represent a base character or a combining character. </para><para><see cref="M:System.Globalization.TextElementEnumerator.Reset" /> moves the enumerator to the beginning of the string, before the first text element. After <see cref="M:System.Globalization.TextElementEnumerator.Reset" />, <see cref="M:System.Globalization.TextElementEnumerator.MoveNext" /> must be called to advance the enumerator to the first text element of the string before reading the value of <see cref="P:System.Globalization.TextElementEnumerator.Current" />.</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Sets the enumerator to its initial position, which is before the first text element in the string.</para></summary></Docs><AssemblyVersion>2.0.0.0</AssemblyVersion></Member></Members></Type>