TextBox.CandidateWindowBoundsChanged Kejadian
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Terjadi ketika jendela Editor Metode Input (IME) terbuka, diperbarui, atau ditutup.
// 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" />
Jenis Acara
Contoh
Di sini, persegi ditempatkan di bawah Kotak Teks. Ketika batas jendela Editor Metode Input (IME) berubah, Margin bawah Kotak Teks ditingkatkan oleh tinggi jendela kandidat Editor Metode Input (IME). Akibatnya, persegi panjang didorong ke bawah oleh jumlah tersebut dan tidak tercakup oleh jendela kandidat.
<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)
};
}
Keterangan
Untuk data peristiwa, lihat CandidateWindowBoundsChangedEventArgs.
Pengguna terkadang memasukkan teks melalui Editor Metode Input (IME) yang ditampilkan di jendela tepat di bawah kotak input teks (biasanya untuk bahasa Asia Timur). Jendela Editor Metode Input (IME) dapat mencakup bagian penting dari UI aplikasi Anda yang mungkin perlu dilihat pengguna saat memasukkan teks. Kejadian ini memberi tahu aplikasi Anda tentang koordinat tempat jendela Editor Metode Input (IME) saat ini ditampilkan. Anda dapat menggunakan info ini untuk menggambar UI Anda di lokasi yang tidak bertentangan dengan jendela Editor Metode Input (IME).
Anda juga dapat menggunakan properti DesiredCandidateWindowAlignment untuk menentukan penempatan pilihan jendela Editor Metode Input (IME) sehubungan dengan kotak input teks.