Freezable.GetAsFrozen Método
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Cria uma cópia congelada do Freezable, usando valores base (não animados) da propriedade. Como a cópia está congelada, quaisquer subobjetos congelados são copiados por referência.
public:
System::Windows::Freezable ^ GetAsFrozen();
public System.Windows.Freezable GetAsFrozen();
member this.GetAsFrozen : unit -> System.Windows.Freezable
Public Function GetAsFrozen () As Freezable
Devoluções
Uma cópia congelada do Freezablearquivo . A propriedade da IsFrozen cópia é definida para true.
Exceções
Não Freezable podem ser congelados porque contêm expressões ou propriedades animadas.
Observações
Deve verificar a CanFreeze propriedade antes de usar este método para verificar se pode Freezable ser congelada. Usar este método é semelhante a criar uma cópia usando o Clone 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 .
| Action | 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 Clone método.
Notas para Herdeiros
Este método utiliza o método virtual GetAsFrozenCore(Freezable) para produzir o clone.