TextBox.CandidateWindowBoundsChanged Evento
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
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.