FrameworkElement.ActualHeight Properti
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.
Mendapatkan tinggi FrameworkElement yang dirender. Lihat Keterangan.
public:
property double ActualHeight { double get(); };
double ActualHeight();
public double ActualHeight { get; }
var double = frameworkElement.actualHeight;
Public ReadOnly Property ActualHeight As Double
Nilai Properti
double
Tinggi, dalam piksel, dari objek . Defaultnya adalah 0. Default mungkin ditemukan jika objek belum dimuat dan belum terlibat dalam kode tata letak yang merender UI.
Contoh
Contoh ini menunjukkan skenario umum di mana Anda menggunakan ActualHeight dari satu atau beberapa elemen di UI untuk mengatur Tinggi salah satu elemen yang terlibat atau elemen yang berbeda, sehingga tinggi bersih yang sama dipertahankan setelah tindakan. Ini biasanya dilakukan sebagai respons terhadap penanganan aktivitas yang dipanggil ketika elemen dibuka atau ditutup, atau area tampilan berubah.
void SDKSample::WebViewControl::PageWithAppBar::BottomAppBar_Opened(Object^ sender, Object^ obj)
{
// AppBar has Opened so we need to put the WebView back to its
// original size/location.
AppBar^ bottomAppBar = (AppBar^) sender;
if (bottomAppBar != nullptr)
{
// Force layout so that we can guarantee that our AppBar's
// actual height has height
this->UpdateLayout();
// Get the height of the AppBar
double appBarHeight = bottomAppBar->ActualHeight;
// Reduce the height of the WebView to allow for the AppBar
WebView8->Height = WebView8->ActualHeight - appBarHeight;
// Translate the WebView in the Y direction to reclaim the space occupied by the AppBar.
TranslateYOpen->To = -appBarHeight / 2.0;
// Run our translate animation to match the AppBar
OpenAppBar->Begin();
}
}
void BottomAppBar_Opened(object sender, object e)
{
// AppBar has Opened so we need to put the WebView back to its
// original size/location.
AppBar bottomAppBar = sender as AppBar;
if (bottomAppBar != null)
{
// Force layout so that we can guarantee that our AppBar's
// actual height has height
this.UpdateLayout();
// Get the height of the AppBar
double appBarHeight = bottomAppBar.ActualHeight;
// Reduce the height of the WebView to allow for the AppBar
WebView8.Height = WebView8.ActualHeight - appBarHeight;
// Translate the WebView in the Y direction to reclaim the space occupied by
// the AppBar. Notice that we translate it by appBarHeight / 2.0.
// This is because the WebView has VerticalAlignment and HorizontalAlignment
// of 'Stretch' and when we reduce its size it reduces its overall size
// from top and bottom by half the amount.
TranslateYOpen.To = -appBarHeight / 2.0;
// Run our translate animation to match the AppBar
OpenAppBar.Begin();
}
}
Private Sub BottomAppBar_Opened(sender As Object, e As Object)
' AppBar has Opened so we need to put the WebView back to its
' original size/location.
Dim bottomAppBar As AppBar = TryCast(sender, AppBar)
If bottomAppBar IsNot Nothing Then
' Force layout so that we can guarantee that our AppBar's
' actual height has height
Me.UpdateLayout()
' Get the height of the AppBar
Dim appBarHeight As Double = bottomAppBar.ActualHeight
' Reduce the height of the WebView to allow for the AppBar
WebView8.Height = WebView8.ActualHeight - appBarHeight
' Translate the WebView in the Y direction to reclaim the space occupied by
' the AppBar. Notice that we translate it by appBarHeight / 2.0.
' This is because the WebView has VerticalAlignment and HorizontalAlignment
' of 'Stretch' and when we reduce its size it reduces its overall size
' from top and bottom by half the amount.
TranslateYOpen.[To] = -appBarHeight / 2.0
' Run our translate animation to match the AppBar
OpenAppBar.Begin()
End If
End Sub
Keterangan
Catatan
Meskipun memiliki bidang dukungan ActualHeightProperty , ActualHeight tidak menaikkan pemberitahuan perubahan properti dan harus dianggap sebagai properti biasa dan bukan properti dependensi.
ActualHeight adalah properti terhitung. Perhitungan adalah hasil dari tata letak lulus, di mana objek berukuran dalam tata letak sesuai dengan logika induk tata letak berturut-turut. Untuk informasi selengkapnya lihat Menentukan tata letak dengan XAML.
ActualHeight dapat memiliki beberapa atau perubahan yang dilaporkan bertahap pada nilai karena operasi oleh sistem tata letak. Jika Anda mendapatkan nilai saat tata letak masih iterasi, sistem tata letak mungkin masih menghitung ukuran ruang yang diperlukan untuk objek anak, batasan oleh objek induk, dan sebagainya. Karena nilai didasarkan pada lulus penyajian aktual, nilai mungkin sedikit tertinggal di belakang nilai properti yang ditetapkan seperti Tinggi, yang dapat menjadi dasar dari perubahan input.
Untuk tujuan pengikatan ElementName , ActualHeight tidak memposting pembaruan saat berubah (karena sifat penghitungan asinkron dan run-timenya). Jangan mencoba menggunakan ActualHeight sebagai sumber pengikatan untuk pengikatan ElementName . Jika Anda memiliki skenario yang memerlukan pembaruan berdasarkan ActualHeight, gunakan handler SizeChanged .
Berlaku untuk
Lihat juga
- ActualWidth
- Height
- <xref:Windows.UI.Xaml.FrameworkElement.SizeChanged%0a(frameworkelement_sizechanged.md)>