Freezable.GetCurrentValueAsFrozen Método

Definição

Cria uma cópia congelada do Freezable usando os valores atuais das propriedades. Como a cópia está congelada, quaisquer subobjetos congelados são copiados por referência.

public:
 System::Windows::Freezable ^ GetCurrentValueAsFrozen();
public System.Windows.Freezable GetCurrentValueAsFrozen();
member this.GetCurrentValueAsFrozen : unit -> System.Windows.Freezable
Public Function GetCurrentValueAsFrozen () As Freezable

Devoluções

Uma cópia congelada do Freezablearquivo . A propriedade da IsFrozen cópia é definida para true.

Observações

Usar este método é semelhante a criar uma cópia usando o CloneCurrentValue e depois congelá-la com o Freeze método.

Os GetAsFrozen métodos e GetCurrentValueAsFrozen podem melhorar o desempenho de cópia porque não clonam Freezable subobjetos que já estão congelados; apenas os copiam por referência.

A tabela seguinte resume as diferenças entre os GetAsFrozen métodos e GetCurrentValueAsFrozen .

Ação Comportamento do método GetAsFrozen Comportamento do método GetCurrentValueAsFrozen
Copiar uma propriedade de dependência que tenha uma expressão O método lança um InvalidOperationException porque não pode Freeze a propriedade. O valor atual da expressão é copiado, mas não a expressão em si.
Cópia de uma propriedade de dependência animada O valor base (não animado) da propriedade é copiado. As animações não são copiadas. O valor animado atual da propriedade é copiado. As animações não são copiadas.

Note que as propriedades não definidas não são copiadas, nem as propriedades de apenas leitura.

Para criar uma cópia do Freezable que não está congelada, use o CloneCurrentValue método.

Notas para Herdeiros

Este método utiliza o método virtual GetCurrentValueAsFrozenCore(Freezable) para produzir o clone.

Aplica-se a

Ver também