Добавить LineShape программно в VB.NET WinForms

Как вы добавляете LineShape программно в VB.NET WinForms?

Я хочу написать что-то похожее на Label, CheckBox или что еще

Dim somelabel as New Label
somelabel.Text = "Whatever"
somelabel.Location = New Point(200, 200)
Me.Controls.Add(somelabel)

И т.п.

Моя цель - создать тонкие разделительные линии между строками и столбцами по 16 меток, которые образуют сетку 4х4.

Я ценю это, так как LineShape является частью VB PowerPacks, это может представлять некоторые трудности, такие как необходимость использования Imports ... или, если действительно необходимо, импортировать .dll, Но я хотел бы увидеть все ваши идеи / решения!

1 ответ

Решение

Сначала импортируйте пространство имен powerpacks, чтобы получить доступ к элементу управления:

Imports Microsoft.VisualBasic.PowerPacks

Тогда вы можете сделать это так:

Dim startx As Integer
Dim starty As Integer
Dim endx As Integer
Dim endy As Integer
Dim yourline As New LineShape(startx, starty, endx, endy)

Где startx = начальная позиция x, starty = начальная позиция y, endx = конечная позиция x и endy = конечная позиция y. Если вы хотите поместить его в холст, просто:

Dim yourcanvas As ShapeContainer
canvas.Parent = formName
yourline.Parent = canvas

Для получения дополнительной информации и справки по API перейдите по адресу: http://msdn.microsoft.com/en-us/library/bb918067.aspx

Другие вопросы по тегам