RichEditBox.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<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" />
Ereignistyp
Beispiele
Hier wird ein Rechteck unter einer RichEditBox platziert. Wenn sich die Grenzen des Eingabemethoden-Editors (IME)-Fensters ändern, wird der untere Rand des RichEditBox-Fensters um die Höhe des ImE-Kandidatenfensters (Input Method Editor) erhöht. Infolgedessen wird das Rechteck durch diesen Betrag nach unten gedrückt und wird nicht vom Kandidatenfenster abgedeckt.
<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)
};
}
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 Ihrer App-Benutzeroberfläche abdecken, die der Benutzer möglicherweise bei der Eingabe von Text sehen muss. Dieses Ereignis benachrichtigt Ihre App über die Koordinaten, in denen derzeit das Fenster Eingabemethoden-Editor (IME) angezeigt wird. Sie können diese Informationen verwenden, um Ihre Benutzeroberfläche an einem Speicherort 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 ImE-Fensters (Input Method Editor) in Bezug auf das Texteingabefeld anzugeben.