PointerDownThemeAnimation Classe
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Représente une animation préconfigurée qui s’exécute lorsqu’un pointeur vers le bas est détecté sur un élément ou un élément.
public ref class PointerDownThemeAnimation sealed : Timeline
/// [Windows.Foundation.Metadata.Activatable(65536, "Microsoft.UI.Xaml.WinUIContract")]
/// [Windows.Foundation.Metadata.ContractVersion(Microsoft.UI.Xaml.WinUIContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class PointerDownThemeAnimation final : Timeline
[Windows.Foundation.Metadata.Activatable(65536, "Microsoft.UI.Xaml.WinUIContract")]
[Windows.Foundation.Metadata.ContractVersion(typeof(Microsoft.UI.Xaml.WinUIContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class PointerDownThemeAnimation : Timeline
Public NotInheritable Class PointerDownThemeAnimation
Inherits Timeline
<PointerDownThemeAnimation .../>
- Héritage
- Attributs
Exemples
Voici un exemple de modèle d’un contrôle personnalisé qui utilise des animations de thème PointerDown/Up.
// Themes/Generic.xaml
<!-- Example template of a custom control that uses PointerDown/Up theme
animations. The PointerDownThemeAnimation will be run when the control
is in the PointerDown state.-->
<ResourceDictionary
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="using:BlankApp1">
<Style TargetType="local:TapControl" >
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="local:TapControl">
<Grid>
<VisualStateManager.VisualStateGroups>
<VisualStateGroup x:Name="TapStates">
<VisualState x:Name="Normal"/>
<VisualState x:Name="PointerDown">
<Storyboard>
<PointerDownThemeAnimation TargetName="contentRectangle"/>
</Storyboard>
</VisualState>
<VisualState x:Name="PointerUp">
<Storyboard>
<PointerUpThemeAnimation TargetName="contentRectangle"/>
</Storyboard>
</VisualState>
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
<Rectangle x:Name="contentRectangle" Width="100" Height="100" Fill="{TemplateBinding Background}"/>
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</ResourceDictionary>
public sealed class TapControl : Control
{
public TapControl()
{
this.DefaultStyleKey = typeof(TapControl);
}
protected override void OnPointerPressed(PointerRoutedEventArgs e)
{
this.CapturePointer(e.Pointer);
VisualStateManager.GoToState(this, "PointerDown", true);
}
protected override void OnPointerReleased(PointerRoutedEventArgs e)
{
VisualStateManager.GoToState(this, "PointerUp", true);
this.ReleasePointerCapture(e.Pointer);
}
}
// TapControl.h
struct TapControl : TapControlT<TapControl>
{
TapControl(){ DefaultStyleKey(winrt::box_value(L"MyApp.TapControl")); }
void OnPointerPressed(Windows::UI::Xaml::Input::PointerRoutedEventArgs const& e);
void OnPointerReleased(Windows::UI::Xaml::Input::PointerRoutedEventArgs const& e);
};
// TapControl.cpp
void TapControl::OnPointerPressed(Windows::UI::Xaml::Input::PointerRoutedEventArgs const& e)
{
CapturePointer(e.Pointer());
// Go to the PointerDown state, which will start the PointerDownThemeAnimation.
Windows::UI::Xaml::VisualStateManager::GoToState(*this, L"PointerDown", true);
}
void TapControl::OnPointerReleased(Windows::UI::Xaml::Input::PointerRoutedEventArgs const& e)
{
Windows::UI::Xaml::VisualStateManager::GoToState(*this, L"PointerUp", true);
ReleasePointerCapture(e.Pointer());
}
// TapControl.h:
public ref class TapControl sealed : public Windows::UI::Xaml::Controls::Control
{
public:
TapControl();
protected:
virtual void OnPointerPressed(Windows::UI::Xaml::Input::PointerRoutedEventArgs^ e) override;
virtual void OnPointerReleased(Windows::UI::Xaml::Input::PointerRoutedEventArgs^ e) override;
};
// TapControl.cpp:
TapControl::TapControl()
{
DefaultStyleKey = "MyApp.TapControl";
}
void SplitOpenControl::OnPointerPressed(PointerRoutedEventArgs^ e)
{
CapturePointer(e->Pointer);
VisualStateManager::GoToState(this, "PointerDown", true);
}
void SplitOpenControl::OnPointerReleased(PointerRoutedEventArgs^ e)
{
VisualStateManager::GoToState(this, "PointerUp", true);
ReleasePointerCapture(e->Pointer);
}
Remarques
La définition de la propriété Duration n’a aucun effet sur cet objet, car la durée est préconfigurée.
PointerDownThemeAnimation remplace les valeurs actuelles de Projection et RenderTransform.
Windows 8.1 etles projections antérieures et RenderTransform ne sont pas affectés par PointerDownThemeAnimation.
Constructeurs
| Nom | Description |
|---|---|
| PointerDownThemeAnimation() |
Initialise une nouvelle instance de la classe PointerDownThemeAnimation . |
Propriétés
| Nom | Description |
|---|---|
| AutoReverse |
Obtient ou définit une valeur qui indique si la chronologie est lue à l’inverse une fois qu’elle a terminé une itération vers l’avant. (Hérité de Timeline) |
| BeginTime |
Obtient ou définit l’heure à laquelle cette chronologie doit commencer. (Hérité de Timeline) |
| Dispatcher |
Retourne |
| DispatcherQueue |
Obtient le |
| Duration |
Obtient ou définit la durée pendant laquelle cette chronologie joue, sans compter les répétitions. (Hérité de Timeline) |
| FillBehavior |
Obtient ou définit une valeur qui spécifie le comportement de l’animation après qu’elle atteint la fin de sa période active. (Hérité de Timeline) |
| RepeatBehavior |
Obtient ou définit le comportement répétitif de cette chronologie. (Hérité de Timeline) |
| SpeedRatio |
Obtient ou définit le taux, par rapport à son parent, au moment où il progresse pour cette chronologie. (Hérité de Timeline) |
| TargetName |
Obtient ou définit le nom de référence de l’élément de contrôle ciblé. |
| TargetNameProperty |
Identifie la propriété de dépendance TargetName . |
Méthodes
| Nom | Description |
|---|---|
| ClearValue(DependencyProperty) |
Efface la valeur locale d’une propriété de dépendance. (Hérité de DependencyObject) |
| GetAnimationBaseValue(DependencyProperty) |
Retourne toute valeur de base établie pour une propriété de dépendance, qui s’applique dans les cas où une animation n’est pas active. (Hérité de DependencyObject) |
| GetValue(DependencyProperty) |
Retourne la valeur effective actuelle d’une propriété de dépendance à partir d’un DependencyObject. (Hérité de DependencyObject) |
| ReadLocalValue(DependencyProperty) |
Retourne la valeur locale d’une propriété de dépendance, si une valeur locale est définie. (Hérité de DependencyObject) |
| RegisterPropertyChangedCallback(DependencyProperty, DependencyPropertyChangedCallback) |
Inscrit une fonction de notification pour écouter les modifications apportées à une dependencyProperty spécifique sur cette instance DependencyObject . (Hérité de DependencyObject) |
| SetValue(DependencyProperty, Object) |
Définit la valeur locale d’une propriété de dépendance sur un DependencyObject. (Hérité de DependencyObject) |
| UnregisterPropertyChangedCallback(DependencyProperty, Int64) |
Annule une notification de modification qui a été précédemment inscrite en appelant RegisterPropertyChangedCallback. (Hérité de DependencyObject) |
Événements
| Nom | Description |
|---|---|
| Completed |
Se produit lorsque l’objet Storyboard a terminé la lecture. (Hérité de Timeline) |