Freezable.GetAsFrozenCore(Freezable) Метод

Определение

Делает экземпляр зафиксированной копией указанного Freezable, используя базовые (без анимации) значения свойств.

protected:
 virtual void GetAsFrozenCore(System::Windows::Freezable ^ sourceFreezable);
protected virtual void GetAsFrozenCore (System.Windows.Freezable sourceFreezable);
abstract member GetAsFrozenCore : System.Windows.Freezable -> unit
override this.GetAsFrozenCore : System.Windows.Freezable -> unit
Protected Overridable Sub GetAsFrozenCore (sourceFreezable As Freezable)

Параметры

sourceFreezable
Freezable

Копируемый экземпляр.

Комментарии

Этот метод вызывается методом GetAsFrozen и не должен вызываться непосредственно из кода, за исключением вызова базовой реализации при переопределении этого метода. Чтобы создать замороженную копию текущего объекта, вызовите GetAsFrozen вместо вызова этого метода напрямую.

Примечания для тех, кто наследует этот метод

Если вы наследуете от Freezable вас, возможно, потребуется переопределить этот метод. Ниже перечислены причины переопределения. — Производный класс содержит данные, которые не предоставляются через свойства зависимостей.

— Производный класс должен выполнять дополнительные операции инициализации, которые невозможно выполнить путем простого переопределения CreateInstanceCore(). Например, это применимо, если производный ISupportInitializeкласс реализует .

Классы, которые хранят все свои данные в свойствах зависимостей и которые не должны выполнять дополнительную работу по инициализации, не нужно переопределять GetAsFrozenCore(Freezable).

Важно, чтобы все реализации вызывали базовую реализацию этого метода. Реализации должны выполнять только те действия, которые не выполняются реализацией по умолчанию. Реализация по умолчанию делает глубокие копии любых незапечатанных освобожденных и мелких копий всех остальных записываемых свойств локально заданными свойствами. Если объект имеет свойства зависимостей, привязанных к данным, выражения копируются, но могут перестать разрешаться; Дополнительные сведения о клонирование объектов, связанных с данными, см. в разделе "Общие сведения об объектах Freezable". Если у объекта есть анимированные свойства зависимостей, копируются базовые (не анимированные) значения этих свойств. Анимации не копируются.

Обратите внимание, что свойства без набора не копируются и не являются свойствами только для чтения.

При переопределении этого метода необходимо вызвать базовую реализацию.

Значения, которые копируются, не требуется Freeze() . Результат заморожен перед возвратом GetAsFrozen() .

Применяется к

См. также раздел