Home » Visual Studio

Fantastically annoying scroll feature

If I open a file in the VS2010 IDE that causes the solution explorer to expand a file tree, then the scroll functionality is looked to the solution explorer window, *not the editing window*.

As long as the scroll bars are not present in the solution explorer, the scroll wheel works normally in the text editor window.  If, however, a path+filename, is long enough to cause the the horizontal scroll bar to appear, in the solution explorer, the scroll wheel is locked to horizontal scroll in the solution explorer.

If I open a file, in the solution explorer, that causes a tree expansion, and consequently the vertical scroll bar to appear in the solution explorer, the scroll wheel is locked to the vertical scroll in the solution explorer.

Is there any way to turn this 'feature' off?  I mean it is bad enough that the help feature in 2010 is a throwback to 1995, but who came up with this productivity neutron bomb?


1 Answer Found


Answer 1

Hi George,


Appreciate for your valuable feedback!


Based on your description, I’m not understanding which special concern would you like to consult.

As I know, I reproduced your scenario according to my understanding.

In Solution Explorer, if the contents are so long  or so width, the scroll  will be showed automatically in it. This function is sealed by this control like ListBox. If the contents are not enough for being show, the scroll will be showed automatically.


If I misunderstood you, please elaborate your question kindly.

I would recommend that you could  capture some screenshots in your reply via Skydrive.



Larcolais Gong


I really annoys me that when I import data and allow the table to be created that it rearranges the columns. I have to go back and reorder the columns to match the import specufucation every time.
Is there a way to turn IE7's auto scroll off so that every time you drill down by clicking on one of the "+" toggle buttons the report doesn't recenter itself. We find this window jumping/scrolling highly annoying to watch.

This problem does NOT occur in FFox, just Microsoft's browsers.

We are displaying this report running on another server running Visual Studio 2005's ReportViewer control in an aspx (ASP.NET) page.

We are using SSRS 2005, std edition.
FFox, IE7.

Will be glad to post more info if requested.


Would be nice if you could disable / enable the flick gesture on a scroll viewer




I am trying to use records center in SharePoint 2010 to create a records managment system. I need to activate the In Place Records and Document ID features, but when i navigate to  Site Settings -> Manage Site Featuers at the site collection level both these features are missing form the list.

Any one have any ideas why these features may be missing form the list??




I've observed one thing regarding scrolling. Please correct me if I'm wrong.

Scrolling happens only when we touch any UIElement and then flick the screen. So, if there is no UIElement present, that is if the page is blank, at that time we won't be able to scroll it.

In my case, I've got a below mentioed scenario.

<content Grid>


    <canvas: "Height=3000">







For example, there is one button at the start of the canvas, and one at the end of it. There are NO other UI elements on the page.

Once we flick the button which is at the top of canvas, we'll scroll and endup in the area which is in between both the buttons. This area is blank and does NOT contain any UIElement.

My question is: How do I scroll again and reach the top or bottom of the page?

Thanks & Regards,




I have a scroll viewer and a listview inside of it. Before, a scroll bar was visible, now in the beta, it is not. I have VerticalScrollBarVisibility set to visible. Anyone else having this problem?


I have a lot of TAB on my main sharepoint page, and when I scroll down vertically, this Top Link Bar go up and disappear from the screen, what I would like to do is this top link bar still remain the same all the time and only some others contents scroll up and down using vertical scroll bar.

Could any one help me , how to do this.





I am rather new to Silverlight and right now I am stuck with problem where I have to scroll a scrollviewer horizontally using a slider.

Basically, the slider will be in the mid-position at all times and depending on how much it is moved in right or left direction the scroll speed will vary.

Thanks in advance!


I have a custom control that is basically a scroll viewer with a child of a stack panel with multiple (and sometimes multiple layers) of Expanders.  I've gotten a "ScrollToControl" method that works well if the control being scrolled to is rendered (the parent expander is expanded).  I've also made a method that will go up the entire tree and find any expanders and set them to expanded. 

The method that expands all parent expanders:


		public void ExpandToControl(FrameworkElement destinationControl)
			// Loop until the parent does not exist
			while (destinationControl.Parent != null)
				// Is the parent an expander? If so, expand it and move upward
				if (destinationControl.Parent as Expander != null)
					Expander parentExpander = destinationControl.Parent as Expander;

					parentExpander.IsExpanded = true;

					destinationControl = parentExpander;
				}	// if

				// Verify it is a framework element
				else if (destinationControl.Parent as FrameworkElement != null)
					destinationControl = destinationControl.Parent as FrameworkElement;
				}	// else

				// It's not a framework element? Exit the loop for sanity sake.
				}	// else
			}	// while
		}	// ExpandToControl(FrameworkElement)


The method that scrolls to the selected control:


		public void ScrollToControl(FrameworkElement scrollToControl)
			// Verify the control is in fact visible in the visual tree. Otherwise an exception will be thrown. 
			while (_PartScrollViewer.IsAncestorOf(scrollToControl) == false)
				if (scrollToControl.Parent == null)
					scrollToControl = null;
				}	// if
					FrameworkElement newParent = scrollToControl.Parent as FrameworkElement;

					if (newParent == null)
						scrollToControl = null;
					}	// if

					scrollToControl = newParent;
				}	// else
			}	// while

			// The control, or one of its ancestors was found to be part of the visual tree
			if (scrollToControl != null)
				GeneralTransform focusedVisualTransform = scrollToControl.TransformToVisual(_PartScrollViewer);
				Point topLeft = focusedVisualTransform.Transform(new Point(scrollToControl.Margin.Left, scrollToControl.Margin.Top));
				Rect rectangle = new Rect(topLeft, scrollToControl.RenderSize);
				double newOffset = _PartScrollViewer.VerticalOffset + (rectangle.Bottom - _PartScrollViewer.ViewportHeight);
				DependencyObject closestFocusScope = FocusManager.GetFocusScope(scrollToControl);

				// The offset cannot be less than 0. 
				if (newOffset < 0)
					newOffset = 0;
				}	// if

				// Scroll, baby, scroll.

			}	// if
		}	// ScrollToControl(FrameworkElement)

I have a page that has the following code:


private void ExtendedPage_Loaded(object sender, RoutedEventArgs e)
// First verify the entire tree is expanded.  If not, this will go to the closest visual ancestor which may not be ideal

// Next, scroll to the control.  Go go gadget scrolling!
} // ExtendedPage_Loaded(object, RoutedEventArgs)

If the expanders are expanded prior to this the ScrollToControl scrolls to the correct control, and sets focus to the element, if focusable.  What I expect to happen is that the first call should ensure any of the expanders are expanded.  My guess is that this isn't working in time because the UI hasn't been rendered.  I've tried called Dispatcher.Invoke on the custom control, the expander, and finally the control being scroll to as discussed in this article: http://geekswithblogs.net/NewThingsILearned/archive/2008/08/25/refresh--update-wpf-controls.aspx

Is there something I'm missing to cause this to behave as expected?



I have a ListBox that has ScrollViewer.VerticalScrollBarVisibility set to Auto.  The scrollbar shows up just fine, and works without a problem when you drag the bar up and down.  However when you try to use the mouse wheel to scroll down, the first scroll jumps halfway down the listbox, and the next one brings you to the bottom.  So the user can scroll this way and miss entire rows of information.  Any ideas on what could be causing this?



I am using Visual Studio 2008, .NET 3.5 and C#.  My WPF Windows application includes a ListView contained within a GroupBox.  The ListView uses a GridView for its View.  The typical scenario has the ListView containing about 35 - 40 items, but the window size permits displaying only about half that many items, so a vertical scroll bar is normally visible and active.  Obviously, the user will need to scroll in order to see and select items in the bottom half of the items list.  It is in this state that wierd and annoying scroll behavior occurs, as described below.

The user scrolls the ListView to select the last item at the bottom of the list, let's say item number 36.  If the user then selects the next item up (item 35) things are still okay, no scrolling occurs.  But if the user selects an item several items up the list, say item 28, which was near the middle of the currently displayed items, the ListView suddenly scrolls up.  The just selected item (28) is now positioned one item up from the bottom of the displayed list of items.  The user now needs to visually find the item he has just selected.

To make matters worse, the ListView now scrolls up one item each time the user selects the next item up (27, then 26, then 25, etc), so the selected item keeps moving to near the bottom of the displayed area, forcing the user to visually find the item he just selected each time.  This is really annoying!  If the item is already visible, and items above and below are also visible, why is the scrolling being done?

This annoying behavior is completely absent if one starts from the top of the ListView.  Scrolling does not occur until the user selects the item at the very bottom of the visible items.

I have searched for properties on the ListView and ScrollViewer to control this behavior, but none seem to be available.

Is there a way to configure the ListView to auto-scroll when selecting from the bottom the same way it auto-scrolls when selecting from the top?  Does .NET 4.0 also behave this way?

Thanks, Dave



In Visual Studio 2010, every time the Find dialog is redisplayed (i.e., Ctrl+F) is grows a little wider. You can see this by pressing Ctrl+F, clicking cancel to close the dialog. Each time the right side of the dialog grows about the width of the close button. It bugs me, because several times per day the dialog scrolls onto my right-most monitor. Has the bug been reported to Microsoft? And if not, how can I report it?



Hi all

I am using a trial version of Windows Embedded 7 and I have one or to REALLY annoying things that I simply cannot believe that MS has yet to address!!

1. Can someone tell me how to stop CTRL+ALT+DEL from WITHIN an application - I do not want my customers to press CAD and then logoff - no way, no how. I am not talking about preventing CAD during logon - that is fixed through auto logon. I want to stop CAD when our application is running.

2. Can someone tell me how to disable F8 on boot. At the moment, my company has spent hundreds of thousands of pounds developing a product and we are trying to protect our IP - only, a user can press F8 during boot and then get "safe mode with command prompt". How can I disable this?

The only way I can stop this so far is to use a third party solution - I cannot beleive that this is the solution - we would be held hostage by this company in terms of licensing!

Considering that this is an embedded platform, I cannot beleive that I am he only person in the world who wants to protect my IP.

Thanks in advance


(a very frustrated but still hopeful) Scott



on App.xaml if you right click and view designer it brings up the blank page showing 'root element cannot be viewed in designer'

now if you right click again and select view desinger it does not switch back to the XAML code you have to do Shift F7 or go to main menu at top and select view designer



I use a remote view to popuate a grid and all is fine until I use REQUERY() to refresh the contents of the table.

I keep a note of the record I'm positioned at before the requery is performed (my table has a local index) and then use SEEK() to return to the correct record.

None of this is a problem except that the grid has a habit of repositioning the highlighted row in the middle of the grid display area....so (for example) if my grid contained 20 rows and the current hightlighted row was the second visible row in the grid and I then did a REQUERY() the grid would redisplay the contents and move the highlighted row to position 10.

Some of our users are complaining that it's a little off putting.

Is there a way to stop this behaviour?



I'm running Eclipse 3.5.1 and TFSEclipsePlugin-UpdateSiteArchive-10.0.0.

If a file is added to a source controlled folder, the Eclipse "Project Explorer" recognises it and shows as "(local)" file. (so good so far)
But the plugin also adds the file to the "pending changes" as change "add"!
This is often not the desired behaviour.

I know that "undo" is bossible at the "pending chages", but is there a possibility to disable this "feature"?

All the best


I am using the 3.51 web browser control and setting the url to (for example) http://www.youtube.com/v/fNt75RR3Q2s&hl=en
The project is set to full trust. A prompt appears with the warning described in the title of this post. Youtube is also set as a trusted site with maximum permissions. 
Has anyone else had this issue and solved it?



In Visual Studio 2010, when editing C# code, if the cursor goes over a class/variable/field/parameter name a popup appears to tell me something about it. It usually manages to obscue part of the screen that I am looking at, and is very annoying. I've searched throught the entire tools -> options menu and can't seem to find a way to turn it off.

Help! I just want to type my code in without this stuff flashing up all over the place.

Many thanks if you are able to provide me with the anwer.



Hey all.

As some of you may know, I've build a WCF Service Libray which calls a 3rd party Legacy Web Service.

The ISA client on site seems to be way more restrictive that it needs to be.  We created an ID that has explicit rights to hit this external service and I've tried a number of ways to actually use the ID:
1) Creating a WebProxy and passing the ID / PW through to the ISA client
2) Impersonation

But neither approach worked... Impersonation in particular I had hopes for because, after I impersonated the ID, this reported that in fact was was impersonating the new ID:
Console.WriteLine(String.Format("GetUser {0}", WindowsIdentity.GetCurrent().Name));

But it seems the ISA client also takes into consideration the owner of the process, which in this case was me since I actually fired up the app with my ID.

Only after right-clicking the app and selecting RUN AS, and using the ID / PW, was the app able to call the exteral web service.  This has created an interesting / annoying / nagging issue for me.  It seems now I must host this WCF under IIS within it's own Application Pool which will be driven by the new ID.

Not 100% sure regards how I'm going to have IIS host this DLL (or would it be an exe), nor am I sure how my client will reference it.

Along the lines of referencing, I created a solution with a dummy client and added a reference to it for the WCF... Since I referred to it like I would normally refer to any DLL, it seems I'm not really doing it correctly.

Finally, I could also build the WCF to be a Windows Service instead that ran 24-7 and of course would be run under the permission of the new ID... Not really sure if this makes more sense that taking the IIS approach... And if I did go this route, how would I reference the service in my client?



I've spent the last 15 minutes trying to lock down what I feel is a rather annoying bug in the product.  I'm attempting to set up a simulated production environment, where I have seperate machines running SQL, Commerce Server, Active Directory, et al.  While attempting to unpackage the data warehouse on one of my web servers, I got the following error:

"Invalid Connection Information for OLAP Server"

According to an earlier newsgroup posting, I need to install SQL Server Analysis Services on my web server to fix this issue, and then remove SQL Server from my web server once I roll out the data warehouse.  While I agree that this isn't the most serious issue (and a quick google search has solved my problem), this seems like something that should be addressed at some point, and at the very least, documented in the install guide.


<< Previous      Next >>

Microsoft   |   Windows   |   Visual Studio   |   Sharepoint   |   Azure