2011-01-04 23 views
6

göründüğünde sınırını yeniden boyutlandırma bana XAML kod parçası göstermeme izin verin: Çok fazla sınırları (bir ObservableCollection ile bağlantılıdır) oluşturulduğundabir verticalScrollBar

, dikey bir kaydırma çubuğu belirir
<ListBox Grid.Row="1" ScrollViewer.HorizontalScrollBarVisibility="Disabled" 
     ScrollViewer.IsDeferredScrollingEnabled="True" 
     HorizontalAlignment="Stretch" ItemsSource="{Binding}" Margin="1,1,0,0" 
     Name="listBox_Faits" Width="290" VerticalAlignment="Stretch" 
     SelectionChanged="listBox_Faits_SelectionChanged"> 
    <ListBox.ItemTemplate> 
     <DataTemplate> 
      <Border BorderBrush="SlateGray" BorderThickness="0.5" Margin="1,2,1,1" 
        Width="{Binding ElementName=listBox_Faits, Path=Width}"> 

ve benim kenarlık kendi başına yeniden boyutlandırılmaz. (Sınırın tamamını görmek istiyorum, sonunda kesilmesini istemiyorum)

Herhangi bir fikri olan varsa, teşekkürler! Daha fazla bilgiye ihtiyacınız varsa, sormaya çekinmeyin!

Rgds,

Flo

cevap

3

Bu ekleyerek ListBoxItem streç yapabilir ve sonra Genişlik, Border

<ListBox ...> 
    <ListBox.ItemContainerStyle> 
     <Style TargetType="ListBoxItem"> 
      <Setter Property="HorizontalContentAlignment" Value="Stretch"/> 
     </Style> 
    </ListBox.ItemContainerStyle> 
    <!-- ... --> 
+0

Vay, haklısın, çalışıyor! – Flo

+0

Hatta daha eski bir sorunu çözdünüz bile !!! Çok çok çok teşekkür ederim! Saygılar, Flo – Flo

+0

@Flo: Sorun değil :) İki sonra bir, harika! –

0

sorun Sınır Boyunun ayarlandığı olmasıdır. Bu, görünür öğeler liste öğesinin boyutundan küçük olsa bile sabit boyutta olacağı anlamına gelir. Border.Width ayarlamazsanız, kaydırma çubuğuna sığacak şekilde yeniden boyutlandırılır.

+0

Hum için bağlayıcı herhangi boyutunu ayarlamak olmadığında, her sınır farklı büyüklüğe sahip kaldırabilirsiniz: Tek gereken içindeki en uzun cümlenin boyutu. İçeriğinin büyüklüğünü düşünmeden sınırın liste kutusuna tam olarak nasıl uyduğunu bilmiyorum. HorizontalAlignement = "Stretch" olduğunu düşündüm, ama işe yaramıyor. – Flo