Object Driven Interface Part 4 of 4

Submitted on: 1/2/2015 12:30:00 AM
By: Paul Stevens (from psc cd)  
Level: Advanced
User Rating: By 2 Users
Compatibility: VB.NET, ASP.NET
Views: 860
     Part 4 of Creating an Object Driven Interface using Custom Attributes, reflection Custom Web Controls and much more. in this part we finally get to use our interface generator The Attached Zip file contains the complete code for all four parts of this article, which i had to split up due to size limits

This article has accompanying files


Part 4 Using our interface Generator

For this we will create a simple Web project to use our interface generator.

Because we cant use resources for our images that we will be using on the web page we need to add these to the Web project the images are in a file called “” in the attached file, the complete Web Project with the images is in a file called “” in the attached file.

Using our interface generator is really simple; we create a Web project and add a Placeholder called PropertyHolder to the page. We the create an instance of our business object, once we have our business object we create an instance of our interface generator passing it our business object in the .ctor., the Interface Generator is declared withevents so that we can handle the ValuesUpdated event.

Dim WithEvents Generator As Wizard.Control.Prototype.InterfaceGenerator

Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

        'Put user code to initialize the page here

        TestObject = New Customer

        Generator = New Wizard.Control.Prototype.InterfaceGenerator(TestObject)


        If IsPostBack Then

            PropertyHolder.Visible = False

        End If

End Sub

For the test when the event is triggered we display the values to the user.

Private Sub Generator_ValuesUpdated(ByVal sender As Object, ByVal e As System.EventArgs) Handles Generator.ValuesUpdated

        TestObject = Generator.WizardObject

        Response.Write("<P>The Following Properties Values now exist in the Object:</P>")

        Response.Write(TestObject.Active & "<BR>")

        Response.Write(TestObject.Address1 & "<BR>")

        Response.Write(TestObject.Address2 & "<BR>")

        Response.Write(TestObject.City & "<BR>")

        Response.Write(TestObject.Contact & "<BR>")

        Response.Write(TestObject.CreditLimit & "<BR>")

        Response.Write(TestObject.Number & "<BR>")

        Response.Write(TestObject.Phone & "<BR>")

        Response.Write(TestObject.Postal & "<BR>")

    End Sub

Now that was cool wasn’t it!

winzip iconDownload article

Note: Due to the size or complexity of this submission, the author has submitted it as a .zip file to shorten your download time. Afterdownloading it, you will need a program like Winzip to decompress it.Virus note:All files are scanned once-a-day by Planet Source Code for viruses, but new viruses come out every day, so no prevention program can catch 100% of them. For your own safety, please:
  1. Re-scan downloaded files using your personal virus checker before using it.
  2. NEVER, EVER run compiled files (.exe's, .ocx's, .dll's etc.)--only run source code.

If you don't have a virus scanner, you can get one at many places on the net

Other 2 submission(s) by this author


Report Bad Submission
Use this form to tell us if this entry should be deleted (i.e contains no code, is a virus, etc.).
This submission should be removed because:

Your Vote

What do you think of this article (in the Advanced category)?
(The article with your highest vote will win this month's coding contest!)
Excellent  Good  Average  Below Average  Poor (See voting log ...)

Other User Comments

 There are no comments on this submission.

Add Your Feedback
Your feedback will be posted below and an email sent to the author. Please remember that the author was kind enough to share this with you, so any criticisms must be stated politely, or they will be deleted. (For feedback not related to this particular article, please click here instead.)

To post feedback, first please login.