TextBox.CandidateWindowBoundsChanged Evento

Definizione

Si verifica quando la finestra dell'editor del metodo di input (IME) viene aperta, aggiornata o chiusa.

// 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 la finestra IME (Input Method Editor) viene modificata, il margine inferiore della casella di testo viene aumentato dall'altezza della finestra candidato dell'editor di metodi di input (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 editor di metodi di input (IME) che mostra in una finestra appena sotto una casella di input di testo (in genere per le lingue asiatiche orientali). La finestra Editor metodo di input (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 Editor metodi di input (IME). È possibile usare queste informazioni per disegnare l'interfaccia utente in una posizione che non è in conflitto con la finestra Editor metodi di input (IME).

È anche possibile usare la proprietà DesiredCandidateWindowAlignment per specificare una posizione preferita della finestra Dell'editor di metodi di input (IME) in relazione alla casella di input.

Si applica a

Vedi anche