PathSegmentCollection.GetEnumerator Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Retorna um enumerador que pode iterar por meio da coleção.
public:
System::Windows::Media::PathSegmentCollection::Enumerator GetEnumerator();
public System.Windows.Media.PathSegmentCollection.Enumerator GetEnumerator();
member this.GetEnumerator : unit -> System.Windows.Media.PathSegmentCollection.Enumerator
Public Function GetEnumerator () As PathSegmentCollection.Enumerator
Retornos
Um PathSegmentCollection.Enumerator que pode iterar por meio da coleção.
Comentários
Os enumeradores só permitem ler os dados na coleção. Enumeradores não podem ser usados para modificar a coleção subjacente.
Inicialmente, o enumerador é posicionado antes do primeiro item da coleção. também traz o enumerador de volta para essa posição. Nessa posição, a chamada Current gera uma exceção. Portanto, você deve chamar MoveNext para avançar o enumerador para o primeiro item da coleção antes de ler o valor de Current.
Current retorna o mesmo objeto até ou MoveNextReset é chamado. MoveNext define Current o próximo item.
Depois que o final da coleção é passado, o enumerador é posicionado após o último item na coleção e a chamada MoveNext retorna false. Se a última chamada a ser MoveNext retornada false, a chamada Current gerará uma exceção. Para definir Current como o primeiro item da coleção novamente, você pode chamar Reset seguido por MoveNext.
Um enumerador permanece válido enquanto a coleção permanecer inalterada. Se forem feitas alterações na coleção, como adicionar, modificar ou excluir itens, o enumerador será invalidado irrecuperavelmente e a próxima chamada para MoveNext ou Reset gerará um InvalidOperationException. Se a coleção for modificada entre MoveNext e Current, Current retornará o item para o qual ela está definida, mesmo que o enumerador já esteja invalidado.
O enumerador não tem acesso exclusivo à coleção; portanto, enumerar por meio de uma coleção não é intrinsecamente um procedimento thread-safe. Mesmo quando uma coleção é sincronizada, outros threads ainda podem modificar a coleção, o que faz com que o enumerador gere uma exceção. Para garantir a segurança do thread durante a enumeração, você pode bloquear a coleção durante toda a enumeração ou capturar as exceções resultantes de alterações feitas por outros threads.