RoutedEvent Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Representa um evento roteado para o sistema de eventos Windows Runtime.
public ref class RoutedEvent sealed
/// [Windows.Foundation.Metadata.ContractVersion(Microsoft.UI.Xaml.WinUIContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
class RoutedEvent final
[Windows.Foundation.Metadata.ContractVersion(typeof(Microsoft.UI.Xaml.WinUIContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
public sealed class RoutedEvent
Public NotInheritable Class RoutedEvent
- Herança
- Atributos
Exemplos
Este exemplo mostra a sintaxe básica para conectar um manipulador de eventos com AddHandler e handledEventsToo como true
. Nesse caso, o evento que está sendo conectado é Tapped e o RoutedEvent
identificador -type usado no exemplo é TappedEvent. O lugar típico para manipuladores de fio é Carregado para uma página ou OnApplyTemplate para um controle com modelo.
void MainPage::pageRoot_Tapped(Platform::Object^ sender, Windows::UI::Xaml::Input::TappedRoutedEventArgs^ e)
{
//implementation
}
void MainPage::pageRoot_Loaded(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e)
{
this->AddHandler(UIElement::TappedEvent, ref new TappedEventHandler(this, &MainPage::pageRoot_Tapped), true);
}
private void pageRoot_Tapped(object sender, TappedRoutedEventArgs e)
{
//implementation
}
private void pageRoot_Loaded_1(object sender, RoutedEventArgs e)
{
this.AddHandler(UIElement.TappedEvent, new TappedEventHandler(pageRoot_Tapped), true);
}
Comentários
Observação
O sistema de eventos Windows Runtime não permite que você crie um evento roteado personalizado; somente o próprio Windows Runtime pode definir um evento de modo que ele tenha o comportamento do evento roteado.
Para obter mais informações sobre como os eventos roteado funcionam, consulte Visão geral de eventos e eventos roteado. O RoutedEvent
tipo faz parte da infraestrutura para eventos roteados, mas você não usa RoutedEvent
diretamente na programação típica Windows Runtime aplicativo.
A finalidade do RoutedEvent
tipo é servir como um identificador para o sistema de eventos Windows Runtime, semelhante a como DependencyProperty fornece um tipo de identificador para o sistema de propriedades de dependência.
UIElement inclui várias propriedades estáticas somente leitura do tipo RoutedEvent
, que são nomeadas usando um padrão de nomenclatura. Cada RoutedEvent
propriedade tem o nome de um evento mais o sufixo "Event". Cada propriedade desse tipo é o identificador do evento roteado com o qual seu nome começa. Por exemplo, TappedEvent identifica o evento roteado Tocado para o sistema de eventos.
Para a maioria dos usos de código do aplicativo, simplesmente referenciar o evento pelo nome em XAML ou pelo nome da entidade de código no código é tudo o que é necessário para referenciar um evento em um objeto, para fins de adição ou remoção de manipuladores. Os RoutedEvent
identificadores só são necessários quando você anexa manipuladores que devem ser invocados mesmo quando os eventos roteado são marcados anteriormente como manipulados pelo código do sistema ou do aplicativo. A API usada para esse cenário e a API que usam um RoutedEvent
valor como parâmetro são UIElement.AddHandler e UIElement.RemoveHandler. Para saber mais, confira Visão geral de eventos e eventos roteados.
Eventos que usam um identificador RoutedEvent
Aqui está uma lista dos eventos roteado que têm um RoutedEvent
identificador e, portanto, podem usar a técnica UIElement.AddHandler que descrevemos:
- DoubleTapped
- DragEnter
- DragLeave
- DragOver
- Gota
- Holding
- KeyDown
- KeyUp
- ManipulationCompleted
- ManipulationDelta
- ManipulationInertiaStarting
- ManipulationStarted
- ManipulationStarting
- PointerCanceled
- PointerCaptureLost
- PointerEntered
- PointerExited
- PointerMoved
- PointerPressed
- PointerReleased
- PointerWheelChanged
- RightTapped
- Tapped
Observação
GotFocus e LostFocus agem como eventos roteado, mas não têm um RoutedEvent
identificador, portanto, você não pode usar AddHandler com eles.