Highlight a Cell/Control in TableLayoutPanel in C# windows application? - winforms

I am adding controls dynamically, one by one from ListBox on a Button click in TableLayoutPanel in Windows application.
How do I highlight (color change) last added cell / control in the panel? I tried out a lot, but couldn't find any solution for this.
Can any one help on this?

Related

Panel with Next and Previous buttons

Hello pplwould like to know if we can do a panel like this in WPF.
Where I sent a list item for the usercontrol, and after that the control showed items that were possible, and if more it shows the next and previous buttons. In windows forms I have. Now wpf in that complicated. I can not show items as monitor size user even knowing how many are being presented, he puts her items and then can not do paging. Can you help me?
Cumps
You could have a horizontal StackPanel in the grid and scroll the StackPanel with two buttons.

Customize my ScrollViewer/Scrollbar in xaml/wpf

I am really bad when it comes to styling in XAML and I have a really big problem. I want to customize my scrollviewer in the ListBox that I have. I want to look something as simple as this
I hope that someone can help me do this.
Thanks in advance.
If you're using Expression Blend this is pretty simple actually. First you need to get to your Control Template for your ScrollBar. You can do this by dropping a ScrollBar control on your Design Surface then right-click and choose "Edit Template -> Edit A Copy" which will present a box to enter the name of your new Style Template and whether you want to save it to a Resource Dictionary or to the file you're working in.
Once you have saved it you should see multiple Parts in your Objects & Timeline panel for the Vertical & Horizontal templates of your ScrollBar. You will be editing the properties of the Rectangles & Borders that create the visual of your Scrollbar within each Control Template for Horizontal & Vertical depending on which you choose to use.
To re-create your example should be relatively easy with finding the "VerticalThumbTemplate" or "HorizontalThumbTemplate" and editing the Border / Rectangles within them to get your oval as you display. You might also want to tinker with your VisualStateManager States while you're in there for MouseOver effects etc.
An example of a custom scrollbar can be found in a partial theme I created awhile back you can view here.
Once you have created your custom ScrollBars you can either make your new style template the default by changing the BasedOn Value for that TargetType, or applying it directly to the ScrollViewer built in to your ListView Template.
Hopefully this should be enough to get you started in the right direction. Cheers! :)
Scrollbar is one of the harder template to customize. If your are really bad at that, you maybe have to search at a custom controls librarie.
But if you really want to edit the scrollbar template, there is plenty of sites that will help you with a simple google search

Scrollbars from ultragrid disappear when dock=filled

I'm writing a windows forms application with an ultragrid.
For layout reasons I'm using the dock property. When I put this property on none (from the ultragrid) the scrollbars are displayed.
When I put this property on fill the scrollbars are gone.
Does anyone know how I can fix this?
I've found an answer on the infragistics forum.
The problem was that other controls on the form where displayed in some way over the ultragrid (allthough it didn't look like it).
The solution is to rightclick on the ultragrid in the form and then select 'bring to front' . The next time i ran the application the scrollbars where there.

Silverlight: How to display items in a grid?

I'm using Silverlight 4. I know how to display items in a vertical or horizontal list using a ListControl or ItemsControl. However, I want to display items in a grid, like you'd see Windows Explorer viewing in grid of icons. How can I do this? Is there a control, or must I use a hack like ItemControls of ItemControls?
you probably want the wrappanel in the silverlight toolkit. here's an old example but you get the idea: http://blogs.silverlight.net/blogs/justinangel/archive/2008/11/05/silverlight-toolkit-wrappanel.aspx

Is it possible for WinForm controls (Panel,etc.) to grow like a webform control?

I'm converting an app from ASP.NET WebForms to WinForms. There is one asp.net page which contains a ListView/Repeater that contains several custom controls, which in turn contain a ListView with other custom controls. Basically the layout looks like a TreeView, but on each node/leaf there are few controls like comboboxes, etc.
When this is in ASP.NET, the page automatically lays itself out, so it is several screens tall - if I add 20 buttons into a Panel, it will grow and the browser will get scrollbars.
I'd like to do the same thing in a WinForms application - so I'll have a user control that will contain a lot of controls in a some variation of Panel (Flow, Table layout), and the controls might have another controls inside them, etc.
The problem is, that when I make winforms app, each control has specific height in the design time. I'd like some user controls to be able to grow with their contents - so they'll add up. In the main Form, there should be a vertical scrollbar, just like in the web browser when the generated page is taller than the screen.
I'd just like to get some general pointers in the right direction. Thanks.
Use Anchor and Dock container properties.
Yes, to expound on Anchor and Dock...try this
-Place a Panel on an empty form, and set its dock property to Top
-place a textbox in the panel, and Dock it to Full...it should fill the whole top panel
-Place a splitter on the form, and if not already docked correctly, set its dock to top
-place another panel below the splitter, and set its Dock to Fill
-place another textbox inside the lower panel and fill it as as well
Now you have a form with two resiable textboxes and will resize when the form does.
*you may have to set the textbox MultiLine property to true but not sure.
Hope this helps.
Anchor the controls to the parent. Anchoring all four sides will cause it to stretch.
If the Anchoring and Docking answers don't work for you, there is another option. It's not pretty, but you can access a control's properties and change them dynamically during runtime. You'd do something like: if(listBox.Items.Count > [yourVal]) listBox.height = [yourFormula] or something.
It's been a while since I've done a Win Form (and I don't have my IDE fired up at the moment) but I'm pretty sure there's even a ScrollPanel or other scrolling control that you can set on your form.
That said, when you're working with WinForms, the less scrolling you can make your users do, the better.

Resources