Nasıl WPF penceresi ölçekli boyutlandırma sonra bir Genişletici ile içerik duruyorsun
SizeToContent="Height"
WPF ile bir pencere var. Bu pencere son aktivite listesini görüntüler <Expander />
içerir. İstediğim genişletme pencere boyutu orantılı olarak büyür genişletilmiş olmasıdır. Yine pencere gizli olduğunda orantılı olarak yeniden boyutlandırır. Pencere yeniden boyutlandırıldığında genişletici ve kontrol altında eğer liste görünümü yeni alanı kullanmak için büyümek gerekir. (renkleri var orada yardım etmek için bana yardımcı olur bu rakam) yok:
Normal Görünüm
Çöktü
Yeni yer için yeniden boyutlandırılabilir
Şimdiye kadar bu harika çalışıyor. Sorun <Expander />
pencere yeniden boyutlandırıldığında sonra yıkılmış geliyor. Pencereyi tekrar çöken yerine, liste görünümü sadece gizli
Yeniden Boyutlandırma sonra çöktü
Benim sezgi pencere Height
pencere yeniden boyutlandırıldığında, kurulmakta olduğunu söyledi ve böylece SizeToContent
özelliği geçersiz kılar. Nasıl yeniden sonra pencerenin içeriğini davranış için boyutu tutmak için alabilir miyim?
Geçerli XAML:
<Window x:Class="DeployLX.Licensing.Nlm.Admin.v3.DashboardWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="Dashboard" Width="504" SizeToContent="Height" Height="275">
<DockPanel>
<Menu DockPanel.Dock="Top">
<MenuItem Header="_File">
<MenuItem Header="E_xit" Command="{Binding Path=CloseCmd}" />
</MenuItem>
</Menu>
<Grid DockPanel.Dock="Top" Margin="8" ShowGridLines="True">
<Grid.RowDefinitions>
<RowDefinition />
<RowDefinition />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition />
<ColumnDefinition />
</Grid.ColumnDefinitions>
<Grid Grid.RowSpan="2" Grid.Row="0" Grid.Column="0" Margin="0,0,8,0">
<Rectangle Fill="Red" />
<TextBlock>ActiveCount</TextBlock>
</Grid>
<Grid Grid.Row="0" Grid.Column="1" Margin="0,0,0,4">
<Rectangle Fill="Green" />
<TextBlock>Authorization</TextBlock>
</Grid>
<Grid Grid.Row="1" Grid.Column="1" Margin="0,4,0,0">
<Rectangle Fill="Blue" />
<TextBlock>Authorization</TextBlock>
</Grid>
</Grid>
<Expander Header="Recent Activity" Margin="8" IsExpanded="True">
<ListView IsSynchronizedWithCurrentItem="True" MinHeight="100">
<ListView.View>
<GridView>
<GridViewColumn Header="Status"/>
</GridView>
</ListView.View>
</ListView>
</Expander>
</DockPanel>
</Window>
GÜNCELLEME:Expander Daraltılmış olay için dinleme ve Windows sıfırlamayı denedim SizeToContent
özelliği. Bu, hemen hemen çalışır. Bu pencereyi tekrar çökmeye neden olur ama yine genişletilmiş zaman geri orijinal 100 piksel Yükseklik gider. Mümkün ve bu Bilgi Deposu yakalamak için olsa ve hataları için hacky yatkın kokuyor.
CEVAP
Eğer SizeToContent kullanmak için gidiyoruz eğer penceresi olmayan resizeable olun. Ayrıca, SizeToContent kullanmamalısın="Yükseklik", ve sonra açık bir Yüksekliği ayarlayın. Düşün bir WPF penceresi için inanmak gerekir, hangi yükseklikte, kullanıcı ayarı ya İçerik? Sadece geri dönün ve ileri ikisi arasında.
JavaScript/JQuery: (pencere)$.boyutlan...
Nasıl otomatik olarak Vim yılında tama...
Nasıl daha sonra düz metin alma için e...
Nasıl jQuery Ajax çağrısından sonra bi...
Nasıl 30 dakika sonra bir PHP oturum s...