Używam kontrolki scrollviewer wokół mojego panelu stosu, który zawiera ItemsControl. Kiedy w ItemControl znajduje się wiele przedmiotów, należy przewijać, ale z jakiegoś powodu po prostu przecinają przedmioty. Oto kod:ScrollViewer nie przewija w WPF
<StackPanel>
<ScrollViewer CanContentScroll="True" VerticalScrollBarVisibility="Visible">
<ItemsControl Name="icEvents" Width="Auto" Height="100" Background="AliceBlue"
ItemsSource="{Binding Path=EventSources}">
<ItemsControl.ItemTemplate>
<DataTemplate>
<StackPanel>
<TextBlock Text="Source:"/>
<TextBlock Text="{Binding Path=Source}" />
<TextBlock Text="Original Source:"/>
<TextBlock Text="{Binding Path=OriginalSource}" />
</StackPanel>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
</ScrollViewer>
</StackPanel>
To może nie być możliwe, ponieważ wszystko jest wewnątrz StackPanel. Na stronie NIE ma siatki. Tylko master stackpanel, który zawiera dwa inne panele piętrowe. Dzieje się tak nawet wtedy, gdy mówię, że wysokość panelu sterującego ma wartość 100. – azamsharp
Problem polega na tym, że każdy element sterujący w oknie jest zawarty w sterowaniu panelem sterującym. –
azamsharp
Ale jeśli naprawdę trzeba używać StackPanel następnie może trzeba ustawić rozmiar dla ScrollViwer uzyskać zwój zawartość, bo jak powiedziałem wcześniej StackPanel robi respektować wysokość swoich dzieci lub szerokość. Musimy więc ustawić wysokość i szerokość, kiedy używamy StackPanel –