views:

2852

answers:

2

I have a Panel and I am adding controls inside this panel. But there is a specific control that I would like to float. How would I go about doing that?

pnlOverheadDetails is the panel name

pnlOverheadDetails.Controls.Add(lnkCalcOverhead);

The control named lnkCalcOverhead is the control I'd like to float.

Thanks in advance

EDIT: By float I meant the css style not anything fancy :)

+5  A: 

If you have a CSS class defined for the control, you could do this before calling the Controls.Add method:

lnkCalcOverhead.CssClass = "MyClass";

If you want to use the style attribute directly, try this:

lnkCalcOverhead.Style.Add("float", "left");
Jeromy Irvine
A: 

IF you are talking about System.Windows.Forms here (and not WPF or ASP.NET):

When you are talking about float, do you mean you want to position it anywhere you want by code? If so, just set the .Location property of the control.

If you are talking about letting a control be moved around inside the panel by the user of your program, you will have to code that. That means capturing mouse events and moving the control accordingly?

Alternatively you can instead of letting the control reside within the Panel, make it as a single control occupying a new form (hence you dont have to code all the mouse event handling). Just make sure that the window is limited to be moved within the boundaries of the "parent panel" (just check on the move event of the form if its within the boundariesm and force it to stay inside).

Wolf5