다음을 통해 공유


RichEditBox.CandidateWindowBoundsChanged 이벤트

정의

IME(입력 메서드 편집기) 창이 열리거나 업데이트되거나 닫히면 발생합니다.

// 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 아래에 배치됩니다. IME(입력 메서드 편집기) 창 경계가 변경되면 RichEditBox의 아래쪽 여백이 IME(입력 메서드 편집기) 후보 창의 높이에 따라 증가합니다. 결과적으로 사각형은 해당 양만큼 아래로 푸시되며 후보 창에서 다루지 않습니다.

<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를 참조하세요.

사용자는 텍스트 입력 상자 바로 아래의 창에 표시되는 IME(입력 방법 편집기)를 통해 텍스트를 입력하는 경우가 있습니다(일반적으로 동아시아 언어용). IME(입력 방법 편집기) 창은 사용자가 텍스트를 입력하는 동안 확인해야 할 수 있는 앱 UI의 중요한 부분을 다룰 수 있습니다. 이 이벤트는 앱에 IME(입력 방법 편집기) 창이 현재 표시되는 좌표를 알립니다. 이 정보를 사용하여 IME(입력 방법 편집기) 창과 충돌하지 않는 위치에 UI를 그릴 수 있습니다.

DesiredCandidateWindowAlignment 속성을 사용하여 텍스트 입력 상자와 관련하여 IME(입력 방법 편집기) 창의 기본 배치를 지정할 수도 있습니다.

적용 대상

추가 정보