I'm trying to add a horizontal scrollbar on my (DevExpress) TileControl in Visual Studio 2010, but I always fail. I know that when you create a TileControl you can automatically scroll with the mouse wheel, but how do I add a Horizontal Scroll bar, too?
I believe you can use the TileControl.ScrollMode property:
tileControl1.ScrollMode = TileControlScrollMode.ScrollBar;
Related
How can I disable the default scrolling effect of a menu and just use a vertical scrollbar. I am able to use the scrollbar when I set overflowY to 'auto'. However, the mouse scroll wheel doesn't work as expected anymore, and the behavior in general is just wonky. I suspect it is because both scrolling is in effect and they are comflicting with each other.
I'm not sure if there is a config option that I am missing. The weird behavior can be seen here: Fiddle
Have you tried setting a height / maxHeight on the menu and setting overflowY:'scroll' ?
I'm working around this issue by simply embedding a panel with a fixed size as a menu item, and then adding all the components to the panel instead. This gives me a lot more flexibility to layout the items, and not have to worry about the inconsistent scrolling of an overflown menu.
To reproduce: wpf datagrid - make sure size of the datagrid is such that horizontal scroll bar is visible and choose a datagridtextcolumn of a particular size - now try to enter a text which straddles this size :)
Any ideas how to fix this problem?
How about disabling the ScrollBar when cells are being edited? Maybe you can add a handler to the DataGrid.BeginningEdit event and disable the ScrollBar there?
ScrollViewer.SetHorizontalScrollBarVisibility(dataGrid, ScrollBarVisibility.Disabled);
ScrollViewer.SetVerticalScrollBarVisibility(dataGrid, ScrollBarVisibility.Disabled);
I am new to Silverlight and I am looking to create a StackPanel that scrolls by dragging it up or down, similarly to how PDF readers work. I did not know if there was anything built in or if I would have to create my own based on mouse down and up.
Hm, just catch MouseMove when LMB is down and change scrolling offset by horizontal difference between last and current points.
I'm editing a WPF Window object in Visual Studio and have a canvas element that stretches outside the boundary of the Window. Visual Studio only gives a zoom in/out feature, but I can't scroll left or right, even though my canvas inside the Window stretches way off the right of the screen. How can I scroll out all that way?
Thanks,
Dave
Your big canvas must be contained in another container with a constrained size. Try to set SizeToContent="WidthAndHeight" on the window.
I am developing a form in .NET Compact Framework, which hosts a variable number of controls. Every control should have the same width as the form. When there are only a few controls, no vertical scrollbar appears. When there are more controls than they can fit in one form, a vertical scrollbar appears. The width of the controls should then be modified, so that no horizontal scrollbar appears.
What is the best way to achieve this? I am interested in a solution that will work in all platforms/screen sizes and that can support screen orientation changes.
If I get this right, at one point, both a vertical and horizontal scrollbar appear, and you want only the vertical scrollbar? Doesn't setting the Anchor of each control to "Top|Left|Right" solve this problem automatically?
If every control is to be the same width as the form, why not just Dock every control to Top (or Bottom)? It'll take care of the resizing for you then. It might not look very attractive however, so I suggest adding in some empty Panels (docked the same way) to be used as vertical spacers.
I did some quick testing, and it seems, when you add controls, the panel raises the resize event when the added control tiggers the scollbars to go visible. The annoying part is here that the resize event is triggered a couple of times during startup :(
But knowing the compact framework, this might be your best shot at handling this.
Normally on the full framework you could if the DisplayRectangle is bigger than the size of the panel, but no such thing exists on the cf.
Hope this is of some help, I'll see if I can find anything more in the morning.