TextBox.CandidateWindowBoundsChanged Evento

Definizione

Si verifica quando la finestra del metodo di input Editor (IME) aperta, aggiorna o chiude.

// Register
event_token CandidateWindowBoundsChanged(TypedEventHandler<TextBox, CandidateWindowBoundsChangedEventArgs const&> const& handler) const;

// Revoke with event_token
void CandidateWindowBoundsChanged(event_token const* cookie) const;

// Revoke with event_revoker
TextBox::CandidateWindowBoundsChanged_revoker CandidateWindowBoundsChanged(auto_revoke_t, TypedEventHandler<TextBox, CandidateWindowBoundsChangedEventArgs const&> const& handler) const;
public event TypedEventHandler<TextBox,CandidateWindowBoundsChangedEventArgs> CandidateWindowBoundsChanged;
function onCandidateWindowBoundsChanged(eventArgs) { /* Your code */ }
textBox.addEventListener("candidatewindowboundschanged", onCandidateWindowBoundsChanged);
textBox.removeEventListener("candidatewindowboundschanged", onCandidateWindowBoundsChanged);
- or -
textBox.oncandidatewindowboundschanged = onCandidateWindowBoundsChanged;
Public Custom Event CandidateWindowBoundsChanged As TypedEventHandler(Of TextBox, CandidateWindowBoundsChangedEventArgs) 
<TextBox CandidateWindowBoundsChanged="eventhandler" />

Tipo evento

Esempio

In questo caso, un rettangolo viene posizionato sotto un controllo TextBox. Quando le finestre del metodo di input Editor (IME) cambiano, il margine inferiore della casella di testo viene aumentato dall'altezza della finestra candidato del metodo di input Editor (IME). Di conseguenza, il rettangolo viene spostato verso il basso per tale importo e non è coperto dalla finestra candidato.

<Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
    <StackPanel>
        <TextBox x:Name="textBox1" Width="300" HorizontalAlignment="Left"
                 DesiredCandidateWindowAlignment="BottomEdge"
                 CandidateWindowBoundsChanged="OnCandidateWindowBoundsChanged"/>
        <Rectangle Height="100" Width="100" Fill="Red"
                   HorizontalAlignment="Left"/>
    </StackPanel>
</Grid>
private void OnCandidateWindowBoundsChanged(TextBox sender, CandidateWindowBoundsChangedEventArgs args)
{
    textBox1.Margin = new Thickness
    {
        Left = 0,
        Top = 0,
        Right = 0,
        Bottom = Math.Max(0, args.Bounds.Bottom - textBox1.ActualHeight)
    };
}

Commenti

Per i dati dell'evento, vedere CandidateWindowBoundsChangedEventArgs.

Gli utenti a volte immettono testo tramite un metodo di input Editor (IME) che mostra in una finestra appena sotto una casella di input di testo (in genere per le lingue asiatiche orientali). La finestra Metodo di input Editor (IME) può coprire parti importanti dell'interfaccia utente dell'app che l'utente potrebbe dover visualizzare durante l'immissione del testo. Questo evento notifica all'app delle coordinate in cui è attualmente visualizzata la finestra Metodo di input Editor (IME). È possibile usare queste informazioni per disegnare l'interfaccia utente in una posizione che non è in conflitto con la finestra Metodo di input Editor (IME).

È anche possibile usare la proprietà DesiredCandidateWindowAlignment per specificare una posizione preferita della finestra del metodo di input Editor (IME) in relazione alla casella di input.

Si applica a

Vedi anche