Linqpad keyboard-shortcuts for cycling through the result panels - linqpad

I am looking for the keyboard-shortcuts for cycling through the result panels. I have plenty of queries that dump intermediate results into different datagrids. I would like to have a keyboard shortcut for cycling though the various result windows.
Alt+up/down scrolls nicely up and down though the content of the focussed result panel. I hoped one of alt+[page-up/down | home/end | left/right] would cycle me through the different result panels. But that does not seem to be the case. The help file states these are mapped to 'scroll output panels', so I guess this means scrolling within the content of the currently focussed panel only.
Is there some other way to cycle through the result panels via keyboard?

LINQPad's keyboard shortcuts are listed in Help | Keyboard Shortcuts. To move between output panels, hold down Shift+Ctrl+Alt and use the Left/Right keys.

Related

Autosizing form to stop controls from overlapping - VB.NET

I am currently designing a form for my business - but struggling to implement a feature.
The image below is of the bottom half of a form - I had to blur/remove quite a lot for data privacy reasons. There are two group boxes here (one on the left and the other on the right).
The blue area is a tool strip. The greyed out areas represent apps. The application itself is basically an app launcher that allows the users to add apps to the tool strip.
Right now I've set the tools strip's LayoutStyle to Flow and the AutoSize to False
This means that when there are only enough apps to fill one row on the tool strip, it all looks fine, with some space between the bottom of the GroupBoxes and the top of the tool strip
However when I add enough apps that there needs to be two rows on the tool strip, the tool strip expands to two rows (represented in the image).
This is what I want, however as can be seen from the image, the tool strip now covers up part of the Groupboxes.
So I think what I want is for the actual form to expand when the tool strip expands, maintaining an same distance between the bottoms of the Groupboxes and the top of the tool strip.
Can this be done simply by setting some properties, or is there a way to do this programatically?

'Pause' Display while control elements are updated (VB.Net)

So, I am kind of asking a question for a hypothetical situation here.
I am producing a Windows Form App made to show multiple windows of data on the screen at the same time. To accomplish this, I have decided to put a Table Layout Panel in the main form to act as a container for all of the data windows I will open.
The width and height of each cell of the Table Layout Panel will change depending on how many windows are open. For example, if just one window is open, it takes up 100% of the width and height of the container area. Alternatively if 3 windows are open, all the windows will have a size equal to 50% of the container's width and height.
Now let's assume each of these Windows have 20 different control elements, which are all used to help the user search through the data shown in each window. Additionally, all of these elements dynamically resize and relocate themselves as the dimensions of the window they are in change.
With all of these moving elements, when a screen is added or removed it can be assumed that there will be a good deal of glitching going on on the screen that may alarm the user. Thus we get to my question.
Is there a way to 'pause' the display of a Windows Form Application so that the user doesn't see everything on change modifying itself? I can't seem to find anything like while looking online so that is why I am asking here.

VB Form Not Holding Format

In the design window, I have my controls formatted one way, but when I run my program, the formatting changes. The window looks larger and the digit button is no longer aligned. I have no clue how to fix this. I am taking an intro level course, so I can't fix this with code. When I wrote my first couple of programs, I didn't have an issue with resizing, but for the last two or three, they never hold their size.
My Program
the above issue please check the anchor tag of each control it should be Top left.
To hold the control position
1 Add panel control to form then dock it to form
2 Add the other
control it will hold the control position as well

How to stop overlapping panels to become children of each other?

Scenario
I have 3 panels which are to be shown depending upon the choice from combobox.
Each panel is designed in exact location, and all three are exactly overlapping each other and even may be partially. But their Top and Left properties are same.
Problem
As soon as I drag to position the panel, it becomes child of one of other two.
I have checked it through .parent.name
If I hide one panel say pnlRSB1 then the child of it the pnlRSB2 also vanishes.
Though I have solved the problem using recursive loop, but I want to know the other available options.
Is there a way that I may tell IDE, "hey don't make it child of underlying panel, its independent"?
B.T.W if someone wants the loop thing solution, I will provide that as well, but I hate recursion though I am living with it right now.
The solution is to not drag them. Just add all three Panels to the form somewhere. Drag one of them so that it's Location and Size are what you want and then set the other two to have he same values via the Properties window.
By the way, one Panel will only become a child of another if you drop it within the other's bounds. The parent will be whatever control is under the mouse pointer when you drop.
Also note that you can still easily access each Panel in the designer, even if they are in the same Location and have the same Size. You just have to change the z-order so that the one you want to access is at the front. There are a number of ways to do that.
Right-click on the Panel you can see and select Send to Back. Repeat until the Panel you want to access is in front.
Open the Properties window and select the Panel you want to access in the drop-down list at the top. This will draw a selection rectangle around the Panel even if the Panel itself is obscured. Right-click the selection rectangle and select Bring to Front.
Open the Document Outline window and either drag the Panel you want to access up above the others in the tree or select it and use the tool bar to move it up. The order of the child controls in the tree matches the z-order.

What technique will I use if i want to change this panel when I click a button in VB

I just have it in my mind. And I can't explain it so here it goes.
A system that only uses 1 form?
It have a two panel, left and right.
The left is consist of buttons
Then the right is associated on the buttons and will change whether what button will be clicked.
Any ideas?
My preference is to do this via custom controls, rather than panels... but panels can work too.
There are a number of ways to do this:
Keep all of the controls layered on top of each other, and then set the Visible property to false for controls/panels you don't care about and to true for the Control/Panel that you do
Move the controls you don't care about out of the visible area
Remove/Add the Controls/Panels from Form's controls collection entirely
I think you can also get a TabControl to put the tabs along the left side, with some formatting that looks more like buttons, such that what you want will be handled without needing to write any code to switch layouts
Any of those can work. Whichever option you use, I have two recommendation for controlling layout and making the transitions smooth.
Call SuspendLayout() before making any changes, and then call ResumeLayout() when you're done. This will help avoid stuttering or a partially rendered form.
Look at the TableLayoutPanel Control. This control will allow you to arrange your top-level panels so that they can be resized with proportion. If you also then dock your individual panels, you can quickly build your program so that it resizes correctly.
You can have several panels, one on top of another. Change their visibility, depending on which one you need at a given moment.
Option #2 would be using a vertical tab control (or a tab strip - see another answer there).