2013-04-01 4 views
1

На форме у меня есть несколько usercontrols, которые создаются динамически при каждом button клике. Я хочу, чтобы пользователь мог выбрать их, чтобы скопировать удаление и т. Д. Как мы выбираем мышью, значками, а затем удаляем их. Для этого я создал другое пользовательское управление, которое создается в позиции мыши. Я не знаю, как я могу нарисовать этот пользовательский контроль. Мой код нед Сейчас:Как создать множественный выбор

//method that creates usercontrols 
private void _butttnAddControls_Click(object sender, EventArgs e) 
    { 
      TControl tcontrol = new TControl();    
      tcontrol.BringToFront(); 
     } 
protected override void OnMouseDown(MouseEventArgs e) 
    { 
     base.OnMouseDown(e); 
     SelectPanel pselect = new SelectPanel();//pselect is the control used to create  the rectangle for selection 
     pselect.Visible = true; 
     Point p = PointToClient(Cursor.Position); 
     pselect.Location = p; 
     pselect.SelectionPanel = true; 
     this.Controls.Add(pselect); 
    } 
    protected override void OnMouseUp(MouseEventArgs e) 
    { 
     base.OnMouseUp(e); 
     pselect.Visible = false; 
    } 
+1

WinForms или WPF? – Guy

+2

Есть WinForms – Viva

ответ

1

Если вы используете WinForms вы можете использовать DrawToBitmap() методы элемента управления, чтобы получить изображение вашего UserControl youv'e созданного динамически.

Проверить эту ссылку для получения дополнительной информации Control.DrawToBitmap Method

Тогда вы можете сделать весь ваш массив управления в окно изображения и использовать вас мышь события там.

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