packages/MaterialDesignThemes.2.5.1/src/net45/Transitions/TransitioningContentBase.cs
(开头部分) 6KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
using System;
using System.Collections.ObjectModel;
using System.ComponentModel;
using System.Linq;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Media;
using System.Windows.Media.Animation;
namespace MaterialDesignThemes.Wpf.Transitions
{
public class TransitioningContentBase : ContentControl, ITransitionEffectSubject
{
public const string MatrixTransformPartName = "PART_MatrixTransform";
public const string RotateTransformPartName = "PART_RotateTransform";
public const string ScaleTransformPartName = "PART_ScaleTransform";
public const string SkewTransformPartName = "PART_SkewTransform";
public const string TranslateTransformPartName = "PART_TranslateTransform";
private MatrixTransform _matrixTransform;
private RotateTransform _rotateTransform;
private ScaleTransform _scaleTransform;
private SkewTransform _skewTransform;
private TranslateTransform _translateTransform;
private bool _isOpeningEffectPending;
static TransitioningContentBase()
{
DefaultStyleKeyProperty.OverrideMetadata(typeof(TransitioningContentBase), new FrameworkPropertyMetadata(typeof(TransitioningContentBase)));
}
public override void OnApplyTemplate()
{
FrameworkElement nameScopeRoot = GetNameScopeRoot();
_matrixTransform = GetTemplateChild(MatrixTransformPartName) as MatrixTransform;
_rotateTransform = GetTemplateChild(RotateTransformPartName) as RotateTransform;
_scaleTransform = GetTemplateChild(ScaleTransformPartName) as ScaleTransform;
_skewTransform = GetTemplateChild(SkewTransformPartName) as SkewTransform;
_translateTransform = GetTemplateChild(TranslateTransformPartName) as TranslateTransform;
UnregisterNames(MatrixTransformPartName, RotateTransformPartName, ScaleTransformPartName, SkewTransformPartName, TranslateTransformPartName);
if (_matrixTransform != null)
nameScopeRoot.RegisterName(MatrixTransformPartName, _matrixTransform);
if (_rotateTransform != null)
nameScopeRoot.RegisterName(RotateTransformPartName, _rotateTransform);
if (_scaleTransform != null)
nameScopeRoot.RegisterName(ScaleTransformPartName, _scaleTransform);
if (_skewTransform != null)
nameScopeRoot.RegisterName(SkewTransformPartName, _skewTransform);
if (_translateTransform != null)
nameScopeRoot.RegisterName(TranslateTransformPartName, _translateTransform);
base.OnApplyTemplate();
RunOpeningEffects();
void UnregisterNames(params string[] names)
{
后面还有 87 行代码,解锁后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明
AI 解读 AI
登录后可用,每次 10 算力,解读结果公开显示在下面。
还没有人解读过这个文件。