ASP.NET Code
  Home arrow ASP.NET Code arrow Create form Wizard using Code-Behind
Iron Speed
ASP Free Forums 
.NET  
ASP  
ASP Code  
ASP.NET  
ASP.NET Code  
BrainDump  
C#  
Code Examples  
Database  
Database Code  
IIS  
Microsoft Access  
MS SQL Server  
Visual Basic.NET  
Windows Scripting  
Windows Security  
XML  
ASP Web Hosting  
ASP.NET Web Hosting 
Dedicated Servers 
Download TestComplete 
Windows Web Hosting
 
IBM® developerWorks 
Weekly Newsletter
 
Developer Updates  
Free Website Content 
IBM Developerworks
 RSS  Articles
 RSS  Forums
 RSS  All Feeds
Write For Us Get Paid 
Request Media Kit
Contact Us 
Site Map 
Privacy Policy 
Support 
 USERNAME
 
 PASSWORD
 
 
  >>> SIGN UP!  
  Lost Password? 
ASP.NET CODE

Create form Wizard using Code-Behind
By: aspfree
  • Search For More Articles!
  • Disclaimer
  • Author Terms
  • Rating: 4 stars4 stars4 stars4 stars4 stars / 5
    2001-12-05

    Table of Contents:

    Rate this Article: Poor Best 
      ADD THIS ARTICLE TO:
      Del.ici.ous Digg
      Blink Simpy
      Google Spurl
      Y! MyWeb Furl
    Email Me Similar Content When Posted
    Add Developer Shed Article Feed To Your Site
    Email Article To Friend
    Print Version Of Article
    PDF Version Of Article
     
     
    Iron Speed
     
    ADVERTISEMENT

    Free Web 2.0 Code Generator! Generate data entry and reporting .NET Web apps in minutes. Quickly create visually stunning, feature-rich apps that are easy to customize and ready to deploy. Download Now!


    This is a updated demo to create form wizard using an aspx page and code-behind in VB.NET


    <%@ Page Language="vb" EnableSessionState="False" EnableViewState="True" Trace="False" Debug="False" Inherits="createformcode" src="createformcode.vb" %>
    <HTML>
    <HEAD>
    <title></title>
    </HEAD>
    <body bgcolor="#ffffff">
    <form runat="server" id="form1">
    Select a tablename to create a .NET form for:
    <asp:dropdownlist id="tblList" runat="server" />&nbsp;&nbsp;
    <asp:Button id="GetTable" Text="Get Table" onclick="GetTable_Click" runat="server" />
    <asp:panel id="myPanel" runat="server" visible="false"><BR>Select the
    Columns used for generating the form.
    <asp:datagrid id="MyDataGrid" runat="server" AutoGenerateColumns="False" HeaderStyle-BackColor="#aaaadd" Font-Size="8pt" Font-Name="Verdana" CellPadding="3" BorderWidth="1" BorderColor="black">
    <Columns>
    <asp:TemplateColumn HeaderText="Add?">
    <ItemTemplate>

    <asp:CheckBox id="chkAdd" runat="server" />

    </ItemTemplate>
    </asp:TemplateColumn>
    <asp:BoundColumn HeaderText="Name" DataField="name" />
    <asp:TemplateColumn HeaderText="Create Validator?">
    <ItemTemplate>

    <asp:CheckBox id="chkValid" runat="server" />

    </ItemTemplate>
    </asp:TemplateColumn>
    </Columns>
    </asp:datagrid>
    <asp:Button id="Button1" onclick="btnSubmit_Click" runat="server" Text="Create Form"></asp:Button> </asp:panel>
    <asp:panel id="pnlTextarea" visible="false" runat="server">
    <P>Copy this code into a new ASP.NET page</P>
    <TEXTAREA id="taResults" name="taResults" rows="40" cols="90" runat="server"> &lt;/asp:panel&gt; &lt;/form&gt; &lt;/body&gt; &lt;/html&gt;
    </TEXTAREA>
    </asp:panel>
    </form>
    </body>
    </HTML>

     

    Imports System
    Imports System.Text
    Imports System.IO
    Imports System.Data
    Imports System.Data.SqlClient
    Imports System.Configuration
    Imports System.Web
    Imports System.Web.UI.WebControls
    Imports System.Web.UI.HTMLControls
    Imports Microsoft.VisualBasic

    Public Class createformcode: Inherits System.Web.UI.Page

    Protected WithEvents TextBox1 As System.Web.UI.WebControls.TextBox
    Protected WithEvents MyDataGrid As System.Web.UI.WebControls.DataGrid
    Protected WithEvents taResults As System.Web.UI.HtmlControls.HtmlTextArea
    Protected WithEvents pnlTextarea As System.Web.UI.WebControls.Panel
    Protected WithEvents myPanel As System.Web.UI.WebControls.Panel
    Protected WithEvents tblList As System.Web.UI.WebControls.DropDownList
    Protected WithEvents GetTable As System.Web.UI.WebControls.Button
    Protected WithEvents btnSubmit As System.Web.UI.WebControls.Button

    Dim sqlText As String
    Dim ds As New DataSet()
    Dim dbComm As New SqlDataAdapter()
    Dim conn As SqlConnection
    Dim sqlServer As String

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

    sqlServer = GetSqlConn()
    conn = New SqlConnection(sqlServer)
    If Not IsPostBack Then
    sqlText = "select id, name from sysobjects where xtype='U' order by name"
    dbComm = New SqlDataAdapter(sqlText, conn)
    dbComm.Fill(ds, "AllTables")
    tblList.DataSource = ds.Tables("AllTables").DefaultView
    tblList.DataTextField = "name"
    tblList.DataValueField = "name"
    tblList.DataBind()
    End If
    End Sub

    Function CreateValidator(ByVal myName As String) As String
    Dim mySB As StringBuilder = New StringBuilder()

    REM -- use :<some text>: as placeholders
    mySB.Append("<asp:RequiredFieldValidator runat=""server"" id="":Name:"" ControlToValidate="":control:"" ErrorMessage="":errMsg:"" display=""Static"">This Required Field!</asp:RequiredFieldValidator>")

    mySB.Replace(":Name:", "vld" & myName) 'add the validator name
    mySB.Replace(":control:", "at" & myName) 'add the control name
    mySB.Replace(":errMsg:", myName & " is required")

    Return mySB.ToString()

    End Function

    Function GetSqlConn() As String
    Dim DSN As String = ConfigurationSettings.AppSettings("DSN")
    Return DSN
    End Function

    Sub GetTable_Click(ByVal sender As Object, ByVal e As EventArgs)
    Dim sqlText As String
    sqlText = "SELECT syscolumns.name, syscolumns.isnullable FROM sysobjects INNER JOIN syscolumns ON sysobjects.id = syscolumns.id where sysobjects.name = '" & tblList.SelectedItem.Text & "' ORDER BY syscolumns.colid"

    REM -- Connect to SQL
    dbComm = New SqlDataAdapter(sqlText, conn)

    REM -- Fill DataSet
    dbComm.Fill(ds, "TestData")
    MyDataGrid.DataSource = ds.Tables("TestData").DefaultView
    MyDataGrid.DataBind()


    REM -- Show the results
    myPanel.Visible = True

    End Sub

    Public Sub btnSubmit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)

    Dim i As Integer
    Dim _item As DataGridItem
    Dim dr As DataRow
    Dim sb As StringBuilder = New StringBuilder()
    Dim strOutput As String

    REM -- Auto Generate The Form
    sb.Append("<form runat=""server"" id=""form2"" name=""form2"">" & chr(13) & chr(10))
    sb.Append(" <table border=1>")


    For i = 0 To MyDataGrid.Items.Count - 1
    REM -- Get the checkbox
    _item = MyDataGrid.Items(i)
    Dim addCheckBox As CheckBox = Ctype(_item.FindControl("chkAdd"), CheckBox)
    Dim validCheckBox As CheckBox = Ctype(_item.FindControl("chkValid"), CheckBox)

    If addCheckBox.Checked Then
    sb.Append(" <tr>" & chr(13))
    sb.Append(" <td>" & _item.Cells(1).Text & "</td>" & chr(13))
    sb.Append(" <td>")
    sb.Append("<asp:textbox id=""at" & _item.Cells(1).Text & """ runat=""server"" />")

    'create a validator control
    If validCheckBox.Checked Then
    sb.Append(" " & vbCrLf & CreateValidator(_item.Cells(1).Text))
    End If

    sb.Append("</td>" & chr(13)) '
    sb.Append(" </tr>" & chr(13)) ' close out the row
    End If

    Next
    sb.Append(" <tr>" & chr(13)) ' close out the row
    sb.Append(" <td colspan=""2""><asp:button id=""button1"" Text=""Validate Form"" runat=""Server"" /></td>" & vbCrLf)
    sb.Append(" </tr>" & chr(13)) ' close out the row
    sb.Append(" </table>" & chr(13))
    sb.Append(vbCrLf & "</form>")
    strOutput = sb.ToString()
    strOutput = System.Web.HttpUtility.HtmlEncode(strOutput)
    taResults.Value = strOutput
    pnlTextarea.Visible = True
    End Sub

    Private Sub InitializeComponent()

    End Sub

    End Class


    DISCLAIMER: The content provided in this article is not warranted or guaranteed by Developer Shed, Inc. The content provided is intended for entertainment and/or educational purposes in order to introduce to the reader key ideas, concepts, and/or product reviews. As such it is incumbent upon the reader to employ real-world tactics for security and implementation of best practices. We are not liable for any negative consequences that may result from implementing any information covered in our articles or tutorials. If this is a hardware review, it is not recommended to open and/or modify your hardware.

    More ASP.NET Code Articles
    More By aspfree

     

    IBM® developerWorks developerWorks - FREE Tools!


    NEW! Driving Business Success with Rational Process Library

    Join this webcast, to learn how the Rational Process Library can help with compliance issues, drive process improvement, and assist in service-oriented architecture (SOA) or Agile development. We will take a peek into the Rational Process Library with content around software and systems engineering (including RUP), operations and systems management, program and portfolio management, and asset and SOA governance.
    FREE! Go There Now!


    NEW! Application development for the OLPC laptop

    The XO laptop (of the One-Laptop-Per-Child initiative) is an inexpensive laptop project intended to help educate children around the world. The XO laptop includes many innovations, such as a novel, inexpensive, and durable hardware design and the use of GNU/Linux as the underlying operating system. The XO also includes an application environment written in Python with a human interface called Sugar, accessible to everyone (including kids). Explore the Sugar APIs and learn how to develop and debug a graphical activity in Sugar using Python.
    FREE! Go There Now!


    NEW! Cook up Web sites fast with CakePHP, Part 2: Bake bigger and better with CakePHP

    CakePHP is a stable production-ready, rapid-development aid for building Web sites in PHP. This "Cook up Web sites fast with CakePHP" series shows you how to build an online product catalog using CakePHP.
    FREE! Go There Now!


    NEW! Hello World: Learn how to install and use the Rational Asset Manager Eclipse client

    In this tutorial, you can learn how to install and configure the IBM Rational Asset Manager Eclipse client, explore the different views in the Asset Management perspective, learn various search techniques, work with existing assets, and submit a new asset.
    FREE! Go There Now!


    NEW! Improve your build process with IBM Rational Build Forge, Part 1: Create a continuous build and integration environment

    Learn how to implement a build management system that uses and extends your existing automation technologies. This tutorial shows, step-by-step, how to install and configure IBM Rational Build Forge to manage builds for Jakarta Tomcat from source code.
    FREE! Go There Now!


    NEW! Innovate don't duplicate! Asset reuse strategies for success

    Asset Reuse is a key strategy for companies looking to create innovative solutions to solve complex software development problems. Searching for, identifying, updating, using and deploying software assets can be a difficult challenge. Listen to this webcast, to learn about strategies and tools that you can leverage for a successful project, including Rational Asset Manager, Rational Software Architect and WebSphere Service Registry and Repository.
    FREE! Go There Now!


    NEW! Rational Talks to You: Grady Booch on Architecture

    Join this Rational Talks to You teleconference on November 29 at 1:00 pm ET to participate in an interactive discusssion with Grady Booch around architecture and reuse. Get your questions answered!
    FREE! Go There Now!


    NEW! Trial download: IBM Rational Performance Tester V7.0.1

    Get a free trial download of the latest version of IBM Rational Performance Tester V7.0.1, a load and performance testing solution for teams concerned about the scalability of their Web-based applications. Combining multiple ease-of-use features with granular detail, Rational Performance Tester simplifies the test-creation, load-generation and data-collection processes that help teams ensure the ability of their applications to accommodate required user loads.
    FREE! Go There Now!


    NEW! Webcast: Calling All Testers! Find Application Vulnerabilities Early in the Development Process Where they are Easier to Fix and Less Risky to your Business

    In this webcast, IBM Rational will discuss the importance of Web application security and will share techniques and best practices to introduce application security testing into current QA processes including: understanding common security vulnerabilities and techniques to integrate security testing with defect tracking and remediation systems in an effort to safeguard sensitive online information.
    FREE! Go There Now!


    NEW! Webcast: Introducing the new Information Server and Solutions community: LeverageInformation

    User communities play an important role in communication and collaboration around products, solutions and other areas of special interest to members. Successful communities are able to provide the right mix of content and services to deliver a value proposition that resonates with each audience. Join Tom Inman, VP of Marketing for Information and Platform Solutions as he introduces the new LeverageINFORMATION community. During this webcast, learn about the value provided by the community and how customers and partners derive value from the community in addressing their own technical and business challenges.
    FREE! Go There Now!



    All FREE IBM® developerWorks Tools!

    ASP.NET CODE ARTICLES

    - How to Use the ListBox Control in ASP.NET 2.0
    - How to Load XML Documents in ASP.NET 2.0
    - DataGrid Code
    - ASP.NET Guestbook
    - User Controls and Client Side Scripting
    - ASP.NET Programming with Microsoft's AS...
    - ASP.NET Basics (part 3): Hard Choices
    - ASP.NET Basics (part 2): Not My Type
    - ASP.NET Basics (part 1): Nothing But .Net
    - Directory Tree Browser
    - How to get the confirmation of Yes/No from a...
    - Complete example using custom errors and wri...
    - Paging Certain # records per page .NET style
    - General Methods of formatting and Subtractin...
    - .NET LinkButton web control

     
    Accelerating Trading Partner Performance
     
    Competing on Analytics
     
    Cost Effective Scaling with Virtualization and Coyote Point Systems
     
    Five Checkpoints to Implementing IP Telephony
     
    Hosted Email Security: Staying Ahead of New Threats
     




    © 2003-2008 by Developer Shed. All rights reserved. DS Cluster 2 hosted by Hostway