A: 

If you assign a name to your panel (you're perhaps using a StackPanel, I'm guessing), you could react to the events on a ScrollViewer to then add or remove items. If your bound data is an ObservableCollection, it'll likely be even easier.

However you'll almost be virtualizing the data, and it's a tricky business to be in.

Consider using the Silverlight 3 VirtualizingStackPanel.aspx) to assist in this process.

Jeff Wilcox