RichEditBox.CandidateWindowBoundsChanged Evento
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.
Ocorre quando a janela IME (Editor de Método de Entrada) é aberta, atualizada ou fechada.
// Register
event_token CandidateWindowBoundsChanged(TypedEventHandler<RichEditBox, CandidateWindowBoundsChangedEventArgs const&> const& handler) const;
// Revoke with event_token
void CandidateWindowBoundsChanged(event_token const* cookie) const;
// Revoke with event_revoker
RichEditBox::CandidateWindowBoundsChanged_revoker CandidateWindowBoundsChanged(auto_revoke_t, TypedEventHandler<RichEditBox, CandidateWindowBoundsChangedEventArgs const&> const& handler) const;
public event TypedEventHandler<RichEditBox,CandidateWindowBoundsChangedEventArgs> CandidateWindowBoundsChanged;
function onCandidateWindowBoundsChanged(eventArgs) { /* Your code */ }
richEditBox.addEventListener("candidatewindowboundschanged", onCandidateWindowBoundsChanged);
richEditBox.removeEventListener("candidatewindowboundschanged", onCandidateWindowBoundsChanged);
- or -
richEditBox.oncandidatewindowboundschanged = onCandidateWindowBoundsChanged;
Public Custom Event CandidateWindowBoundsChanged As TypedEventHandler(Of RichEditBox, CandidateWindowBoundsChangedEventArgs)
<RichEditBox CandidateWindowBoundsChanged="eventhandler" />
Tipo de evento
Exemplos
Aqui, um retângulo é colocado abaixo de um RichEditBox. Quando os limites da janela IME (Editor de Método de Entrada) são alterados, a margem inferior do RichEditBox é aumentada pela altura da janela candidata do Editor de Método de Entrada (IME). Como resultado, o retângulo é empurrado para baixo por esse valor e não é coberto pela janela candidata.
<Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
<StackPanel>
<RichEditBox x:Name="editBox1" Width="300" HorizontalAlignment="Left"
DesiredCandidateWindowAlignment="BottomEdge"
CandidateWindowBoundsChanged="OnCandidateWindowBoundsChanged"/>
<Rectangle Height="100" Width="100" Fill="Red"
HorizontalAlignment="Left"/>
</StackPanel>
</Grid>
private void OnCandidateWindowBoundsChanged(RichEditBox sender, CandidateWindowBoundsChangedEventArgs args)
{
editBox1.Margin = new Thickness
{
Left = 0,
Top = 0,
Right = 0,
Bottom = Math.Max(0, args.Bounds.Bottom - editBox1.ActualHeight)
};
}
Comentários
Para obter dados de evento, consulte CandidateWindowBoundsChangedEventArgs.
Às vezes, os usuários inserem texto por meio de um IME (Editor de Método de Entrada) que aparece em uma janela logo abaixo de uma caixa de entrada de texto (normalmente para idiomas do Leste Asiático). A janela IME (Editor de Método de Entrada) pode abranger partes importantes da interface do usuário do aplicativo que o usuário pode precisar ver ao inserir texto. Esse evento notifica seu aplicativo das coordenadas em que a janela IME (Editor de Método de Entrada) é exibida no momento. Você pode usar essas informações para desenhar sua interface do usuário em um local que não está em conflito com a janela IME (Editor de Método de Entrada).
Você também pode usar a propriedade DesiredCandidateWindowAlignment para especificar um posicionamento preferencial da janela IME (Editor de Método de Entrada) em relação à caixa de entrada de texto.