RichEditBox.CandidateWindowBoundsChanged 事件

定義

當輸入法編輯器 (輸入法) 視窗開啟、更新或關閉時發生。

// 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" />

事件類型

範例

在這裡,矩形位於 RichEditBox下方。 當輸入法編輯器 (輸入法) 視窗界限變更時,RichEditBox的底部Margin會隨著輸入方法編輯器的高度 (輸入法) 候選視窗而增加。 因此,矩形會由該數量向下推送,而且候選視窗未涵蓋。

<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) 
    };
} 

備註

如需事件資料,請參閱 CandidateWindowBoundsChangedEventArgs

使用者有時會透過輸入法編輯器輸入文字, (輸入法) ,顯示在文字輸入方塊正下方的視窗中, (通常適用于東亞語言) 。 輸入法編輯器 (輸入法) 視窗可以涵蓋使用者在輸入文字時可能需要查看的應用程式 UI 重要部分。 此事件會通知您的應用程式輸入法編輯器 (輸入法) 視窗目前顯示的位置。 您可以使用這項資訊,在與輸入法編輯器 (輸入法) 視窗不衝突的位置中繪製 UI。

您也可以使用 DesiredCandidateWindowAlignment 屬性來指定輸入法編輯器 (輸入法) 視窗相對於文字輸入方塊的慣用位置。

適用於

另請參閱