•      Powered by
 

Create form Wizard using Code-Behind

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>
 

asdf

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
 
 

tio

Terms of Use | Privacy Statement ©2005-2006 IISLogs.com. All rights reserved - Powered by IIS7 - info @ www.IIS.net