2008-11-14 4 views
8

У меня есть панель, и я добавляю элементы управления внутри этой панели. Но есть конкретный элемент управления, который я хотел бы плавать. Как мне это сделать?C# Добавление стиля к элементу управления

pnlOverheadDetails это имя панели

pnlOverheadDetails.Controls.Add(lnkCalcOverhead); 

управления имени lnkCalcOverhead является контроль Я хотел бы плавать.

Заранее спасибо

EDIT: По поплавка я имел в виду стиль CSS не что-нибудь фантазии :)

+0

Вы имеете в виду float, как в CSS или с точки зрения того, что я хочу, чтобы панель перемещалась по странице, когда я ее перетаскиваю. – 2008-11-14 13:47:27

ответ

21

Если у вас есть класс CSS, определенный для управления, вы можете сделать это перед вызовом метода Controls.Add:

lnkCalcOverhead.CssClass = "MyClass"; 

Если вы хотите использовать атрибут стиля непосредственно, попробуйте это:

lnkCalcOverhead.Style.Add("float", "left"); 
0

ЕСЛИ вы говорите о System.Windows.Forms здесь (а не WPF или ASP.NET):

Когда вы говорите о поплавке, вы имеете в виду, что хотите разместить его в любом месте по коду? Если это так, просто установите свойство .Location элемента управления.

Если вы говорите о том, чтобы позволить элементу управления перемещаться внутри панели пользователем вашей программы, вам придется это кодировать. Это означает захват событий мыши и перемещение элемента управления соответственно?

В качестве альтернативы вы можете вместо того, чтобы позволить элементу управления находиться внутри Panel, сделать его как отдельный элемент управления, занимающий новую форму (следовательно, вам не нужно кодировать всю обработку событий мыши). Просто убедитесь, что окно ограничено для перемещения в границах «родительской панели» (просто проверьте событие перемещения формы, если оно находится в пределах границ и заставило его остаться внутри).

Смежные вопросы