Bir ScrollViewer öğesinin dikey kaydırma çubuğunun VerticalOffset öğesindeki değişikliklerden haberdar olmak istiyorum. WPF'de bir ScrollViewer.ScrollChanged olayı var, ancak Silverlight 3'te bu eksik. Bir geçici çözüm bilen var mı? Sen eleman bağlayıcı kullanabilirsinizSilverlight 3 ScrollViewer.ScrollChanged olay geçici çözümü eksik?
9
A
cevap
6
, burada bir aptal örnektir: - ScrollViewer
gibi
<Grid x:Name="LayoutRoot" Background="White">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="100" />
<ColumnDefinition Width="100" />
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="60" />
</Grid.RowDefinitions>
<ScrollViewer x:Name="ScrollSource">
<StackPanel>
<TextBlock>Hello</TextBlock>
<TextBlock>World</TextBlock>
<TextBlock>Yasso</TextBlock>
<TextBlock>Kosmos</TextBlock>
</StackPanel>
</ScrollViewer>
<TextBox Grid.Column="1" Text="{Binding VerticalOffset, ElementName=ScrollSource}" />
</Grid>
yeni değerin tavsiye edilir TextBox metin özelliği kayarak geçerler.
3
Silverlight forumlarında özellikli daha kolay bir çözüm var: Burada
protected override Size ArrangeOverride(Size finalSize)
{
// Assumes you only have one scrollviewer (e.g. fullscreen ScrollViewer)
var scrollbar = LayoutRoot.GetVisualDescendants()
.OfType<ScrollBar>()
.FirstOrDefault();
if (scrollbar != null)
scrollbar.Scroll += ScrollBarScroll;
return base.ArrangeOverride(finalSize);
}
private void ScrollBarScroll(object sender, ScrollEventArgs e)
{
}
1
Googling ederken buldum iyi bir bağlantı, aynı zamanda ı işaretli değil bazı örnek kodu vardır.
http://dotplusnet.blogspot.com/2010/05/scrollviewer-scroll-change-event-in.html
Bahşiş için teşekkürler! ScrollChanged olayına abone olan WPF yerine, şimdi özel bir bağımlılık özelliğini scrollviewer's VerticalOffset'e bağlarım ve bağımlılık özelliği için koddaki değiştirilmiş değerler ile bir şeyler yapabilmeleri için bir geri arama kullanıyorum. En azından çalışır: p – eriksmith200
http://www.wintellect.com/CS/blogs/jlikness/archive/2010/05/18/making-the-scrollviewer-talk-in-silverlight-4.aspx –