TextBox.CandidateWindowBoundsChanged Ereignis
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Tritt auf, wenn das Fenster Eingabemethoden-Editor (IME) geöffnet, aktualisiert oder geschlossen wird.
// 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" />
Ereignistyp
Beispiele
Hier wird ein Rechteck unter einem TextBox-Element platziert. Wenn sich die Fenstergrenzen des Eingabemethoden-Editors (IME) ändern, wird der untere Rand des TextBox-Steuerelements um die Höhe des Kandidatenfensters für Eingabemethoden-Editor (IME) erhöht. Daher wird das Rechteck um diesen Betrag gedrückt und nicht vom Kandidatenfenster abgedeckt.
<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)
};
}
Hinweise
Ereignisdaten finden Sie unter CandidateWindowBoundsChangedEventArgs.
Benutzer geben manchmal Text über einen Eingabemethoden-Editor (IME) ein, der in einem Fenster direkt unter einem Texteingabefeld angezeigt wird (in der Regel für ostasiatische Sprachen). Das Fenster Eingabemethoden-Editor (IME) kann wichtige Teile der App-Benutzeroberfläche abdecken, die der Benutzer möglicherweise beim Eingeben von Text sehen muss. Dieses Ereignis benachrichtigt Ihre App über die Koordinaten, in denen das Fenster Eingabemethoden-Editor (IME) derzeit angezeigt wird. Sie können diese Informationen verwenden, um ihre Benutzeroberfläche an einem Ort zu zeichnen, der nicht mit dem Fenster Eingabemethoden-Editor (IME) in Konflikt kommt.
Sie können auch die DesiredCandidateWindowAlignment-Eigenschaft verwenden, um eine bevorzugte Platzierung des Eingabemethoden-Editor-Fensters (IME) in Bezug auf das Texteingabefeld anzugeben.