Solved

Display a Powerpack RectangleShape at runtime

Posted on 2009-05-08
2
920 Views
Last Modified: 2012-05-06
The generation of the shape is controlled at runtime by data read from a file to set all the properties I care about e.g. Size, Location, Color, BorderWidth etc. Now, I would like to render it on a form. This should be trivial, but I can't just add it as a control so something different must be done...

Do I need to create some container on the form first, am I missing one of the commands to cause it to draw and/or connect it to a specific form, something else?? Probably a dumb question...
Dim rc As RectangleShape
        rc = New RectangleShape
        rc.Location = New Point(100, 100)
        rc.Size = New Point(150, 150)
        ' ... now what

Open in new window

0
Comment
Question by:MarkBottomley
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
2 Comments
 
LVL 16

Accepted Solution

by:
ToddBeaulieu earned 125 total points
ID: 24338912
Check this out:

http://msdn.microsoft.com/en-us/library/microsoft.visualbasic.powerpacks.rectangleshape.aspx

I whipped this example up...
    Private Sub DrawRectangle()
        Dim canvas As New Microsoft.VisualBasic.PowerPacks.ShapeContainer
        Dim rect1 As New Microsoft.VisualBasic.PowerPacks.RectangleShape
 
        ' Set the form as the parent of the ShapeContainer.
        canvas.Parent = Me
 
        With rect1
            ' Set the ShapeContainer as the parent of the RectangleShape.
            .Parent = canvas
            .BorderWidth = 2
            .BorderStyle = DashStyle.Solid
            .BorderColor = Color.DarkBlue
 
            .CornerRadius = 5
            .FillColor = Color.LightBlue
            .FillStyle = FillStyle.Solid
            .FillGradientStyle = FillGradientStyle.ForwardDiagonal
            .FillGradientColor = Color.AntiqueWhite
 
            ' Set the location and size of the rectangle.
            .Left = 10
            .Top = 10
            .Width = 100
            .Height = 100
        End With
 
    End Sub

Open in new window

0
 

Author Closing Comment

by:MarkBottomley
ID: 31579566
The addition of a Canvas is not obvious when just adding the PowerPack items in the form designer - thanks
0

Featured Post

Free Tool: Path Explorer

An intuitive utility to help find the CSS path to UI elements on a webpage. These paths are used frequently in a variety of front-end development and QA automation tasks.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
VB.net and sql server 4 55
Groupbox Control ? 2 29
VB.net Filesystem watcher not working 5 38
VB.NET System.NullReferenceException 1 26
I think the Typed DataTable and Typed DataSet are very good options when working with data, but I don't like auto-generated code. First, I create an Abstract Class for my DataTables Common Code.  This class Inherits from DataTable. Also, it can …
It’s quite interesting for me as I worked with Excel using vb.net for some time. Here are some topics which I know want to share with others whom this might help. First of all if you are working with Excel then you need to Download the Following …
Nobody understands Phishing better than an anti-spam company. That’s why we are providing Phishing Awareness Training to our customers. According to a report by Verizon, only 3% of targeted users report malicious emails to management. With compan…
Exchange organizations may use the Journaling Agent of the Transport Service to archive messages going through Exchange. However, if the Transport Service is integrated with some email content management application (such as an antispam), the admini…

730 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question