TextBox.CandidateWindowBoundsChanged 事件
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
当输入法编辑器 (输入法) 窗口打开、更新或关闭时发生。
// 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" />
事件类型
示例
此处,一个矩形放置在 TextBox 的下方。 当输入法编辑器 (输入法) 窗口边界更改时,TextBox 的下边距将增加输入法编辑器 (输入法) 候选窗口的高度。 因此,矩形将按该量向下推,并且不由候选窗口覆盖。
<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)
};
}
注解
有关事件数据,请参阅 CandidateWindowBoundsChangedEventArgs。
用户有时通过输入法编辑器 (输入法输入文本) 输入文本,该输入框显示在窗口正下方的文本输入框 (通常适用于东亚语言) 。 输入法编辑器 (输入法) 窗口可以涵盖用户输入文本时可能需要查看的应用 UI 的重要部分。 此事件通知应用输入法编辑器 (输入法) 窗口当前显示的坐标。 可以使用此信息在与输入法编辑器 (输入法) 窗口不冲突的位置绘制 UI。
还可以使用 DesiredCandidateWindowAlignment 属性指定输入法编辑器 (输入法) 窗口相对于文本输入框的首选位置。