Click here to Skip to main content
11,718,589 members (83,638 online)
Click here to Skip to main content

Tagged as

Synchronize ListBoxes easy

, 22 Sep 2010 CPOL 3.9K 1
Rate this:
Please Sign up or sign in to vote.
An easy answer;
I find out an easy way for Silverlight 4 to synchronize two ListBox or any that has a ScrollContentPresenter

I started with silverlightdatagridscroll article I modified the method GetScrollBar to this:

public ScrollContentPresenter GetScrollPresenter(DependencyObject dep)
        {
            for (int i = 0; i < VisualTreeHelper.GetChildrenCount(dep); i++)
            {
                var child = VisualTreeHelper.GetChild(dep, i);
                if (child != null && child is ScrollContentPresenter)
                    return child as ScrollContentPresenter;
                else
                {
                    ScrollContentPresenter sub = GetScrollPresenter(child);
                    if (sub != null)
                        return sub;
                }
            }
            return null;
        }

Now, I implemented the following in my code:

GetScrollPresenter(scrollViewer0).LayoutUpdated += (s1, e1) =>
{
  try
     {
        if(GetScrollPresenter(scrollViewer1)!=null && GetScrollPresenter(scrollViewer0) !=null)
                            GetScrollPresenter(scrollViewer1).SetVerticalOffset(GetScrollPresenter(scrollViewer0).VerticalOffset);
     }
     catch
     {
     }
};

And the last thing, in my case I have the following in the XAML:

<ScrollViewer Padding="10" x:Name="scrollViewer0" Style="{StaticResource PageScrollViewerStyle}" Margin="10">
            <ListBox x:Name="SourceList" Background="#FFE8F8FF" />
        </ScrollViewer
>

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

Share

About the Author

Juan Pablo G.C.
Software Developer Expediteapps
Spain Spain
I'm Electronic Engineer, I did my end degree project at Astrophysical Institute and Tech Institute. I'm HP Procurve AIS and ASE ,Microsoft 3.5 MCTS
I live in Canary Islands ,developing customized solutions

Deeply involved in Xamarin Forms LOB (including Azure Cloud with offline support, custom controls, dependencies) projects, WP8.1 & W10 projects, WPF modern styled projects. Portable libraries like portablePDF, portableOneDrive, portableReports and portablePrinting (using Google Printing API).


Web and apps showcase at:
Expediteapps


Take a look to my blog
Blog

You may also be interested in...

Comments and Discussions

 
-- There are no messages in this forum --
| Advertise | Privacy | Terms of Use | Mobile
Web04 | 2.8.150901.1 | Last Updated 22 Sep 2010
Article Copyright 2010 by Juan Pablo G.C.
Everything else Copyright © CodeProject, 1999-2015
Layout: fixed | fluid