Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,038

HOME > ASP.NET > ASP.NET GridView Control > ASP.NET GridView Control - DropDownList in GridView


ASP.NET GridView Control - DropDownList in GridView

ASP.NET GridView Control - DropDownList in GridView ตัวอย่างนี้จะเป็นการใช้งาน GridView และ DropDownList โดยจะทำการ BindData ลงใน Column ที่เป็น DropDownList โดยในตัวอย่างจะทำการ Bind ในส่วนของ Footer และในส่วนของ Edit Item

Language Code : VB.NET || C#

Framework : 2,3,4


GridViewDropDownList.aspx

001.<%@ Page Language="VB" %>
002.<%@ import Namespace="System.Data" %>
003.<%@ import Namespace="System.Data.OleDb" %>
004.<script runat="server">
005.    Dim objConn As OleDbConnection
006.    Dim objCmd As OleDbCommand
007.    Dim strSQL As String
008. 
009.    Sub Page_Load(sender As Object, e As EventArgs)
010.           Dim strConnString As String
011.           strConnString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="& _
012.           Server.MapPath("database/mydatabase.mdb")&";"
013.           objConn = New OleDbConnection(strConnString)
014.           objConn.Open()
015. 
016.           IF Not Page.IsPostBack() Then   
017.            BindData()
018.           End IF
019.    End Sub
020. 
021.    Sub BindData()    
022.       strSQL = "SELECT * FROM customer"
023. 
024.       Dim dtReader As OleDbDataReader
025.       objCmd = New OleDbCommand(strSQL, objConn)
026.       dtReader = objCmd.ExecuteReader()
027. 
028.       '*** BindData to GridView ***'
029.       myGridView.DataSource = dtReader
030.       myGridView.DataBind()
031. 
032.       dtReader.Close()
033.       dtReader = Nothing
034. 
035.    End Sub
036. 
037.    Sub Page_UnLoad()
038.       objConn.Close()
039.       objConn = Nothing
040.    End Sub
041. 
042.    Function DataTableCountryCode() As DataTable
043.        Dim strConnString As String
044.        Dim dtAdapter As OleDbDataAdapter
045.        Dim dt As New DataTable
046.               
047.        strConnString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="& _
048.        Server.MapPath("database/mydatabase.mdb")&";"
049.        objConn = New OleDbConnection(strConnString)
050.        objConn.Open()
051. 
052.        Dim strSQL As String       
053.        strSQL = "SELECT * FROM country"
054. 
055.        dtAdapter = New OleDbDataAdapter(strSQL, objConn)
056.        dtAdapter.Fill(dt)
057. 
058.        dtAdapter = Nothing
059. 
060.        Return dt
061. 
062.    End Function
063. 
064.    Sub modEditCommand(sender As Object, e As GridViewEditEventArgs)
065.        myGridView.EditIndex = e.NewEditIndex
066.        myGridView.ShowFooter = False
067.        BindData()
068.    End Sub
069. 
070.    Sub modCancelCommand(sender As Object, e As GridViewCancelEditEventArgs)
071.        myGridView.EditIndex = -1
072.        myGridView.ShowFooter = True
073.        BindData()
074.    End Sub
075. 
076.    Sub modDeleteCommand(sender As Object, e As GridViewDeleteEventArgs)
077.        strSQL = "DELETE FROM customer WHERE CustomerID = '" & myGridView.DataKeys.Item(e.RowIndex).Value & "'"
078.        objCmd = New OleDbCommand(strSQL, objConn)
079.        objCmd.ExecuteNonQuery()
080. 
081.        myGridView.EditIndex = -1
082.        BindData()
083.    End Sub
084. 
085. 
086.    Sub myGridView_RowCommand(source As Object, e As GridViewCommandEventArgs)
087.        If e.CommandName = "Add" Then
088.            '*** CustomerID ***'
089.            Dim txtCustomerID As TextBox = CType(myGridView.FooterRow.FindControl("txtAddCustomerID"), TextBox)
090.            '*** Name ***'
091.            Dim txtName As TextBox = CType(myGridView.FooterRow.FindControl("txtAddName"), TextBox)
092.            '*** Email ***'
093.            Dim txtEmail As TextBox = CType(myGridView.FooterRow.FindControl("txtAddEmail"), TextBox)
094.            '*** CountryCode ***'
095.            Dim ddlCountryCode As DropDownList = CType(myGridView.FooterRow.FindControl("ddlAddCountryCode"), DropDownList)
096.            '*** Budget ***'
097.            Dim txtBudget As TextBox = CType(myGridView.FooterRow.FindControl("txtAddBudget"), TextBox)
098.            '*** Used ***'
099.            Dim txtUsed As TextBox = CType(myGridView.FooterRow.FindControl("txtAddUsed"), TextBox)
100. 
101.            strSQL = "INSERT INTO customer (CustomerID,Name,Email,CountryCode,Budget,Used) " & _
102.            " VALUES ('" & txtCustomerID.Text & "','" & txtName.Text & "','" & txtEmail.Text & "' " & _
103.            " ,'" & ddlCountryCode.SelectedItem.Value & "','" & txtBudget.Text & "','" & txtUsed.Text & "') "
104.            objCmd = New OleDbCommand(strSQL, objConn)
105.            objCmd.ExecuteNonQuery()
106. 
107.            BindData()
108.        End If
109.    End Sub
110.     
111.    Sub myGridView_RowDataBound(source As Object, e As GridViewRowEventArgs)
112.             
113.            '*** Footer ***'
114.            IF e.Row.RowType = DataControlRowType.Footer Then
115. 
116.                '*** CountryCode ***'
117.                Dim ddlCountryCode As DropDownList = CType(e.Row.FindControl("ddlAddCountryCode"), DropDownList)
118.                IF Not IsNothing(ddlCountryCode) Then
119.                    With ddlCountryCode
120.                        .DataSource = DataTableCountryCode
121.                        .DataTextField = "CountryName"
122.                        .DataValueField = "CountryCode"
123.                        .DataBind()
124.                    End With                       
125.                End IF
126. 
127.            End IF
128. 
129.            '*** Edit ***'
130.            IF e.Row.RowType = DataControlRowType.DataRow Then
131. 
132.                '*** CustomerID ***'
133.                Dim txtCustomerID As TextBox = CType(e.Row.FindControl("txtEditCustomerID"), TextBox)
134.                IF Not IsNothing(txtCustomerID) Then
135.                    txtCustomerID.Text = e.Row.DataItem("CustomerID")
136.                End IF
137.                '*** Name ***'
138.                Dim txtName As TextBox = CType(e.Row.FindControl("txtEditName"), TextBox)
139.                IF Not IsNothing(txtName) Then
140.                    txtName.Text = e.Row.DataItem("Name")
141.                End IF
142.                '*** Email ***'
143.                Dim txtEmail As TextBox = CType(e.Row.FindControl("txtEditEmail"), TextBox)
144.                IF Not IsNothing(txtEmail) Then
145.                    txtEmail.Text = e.Row.DataItem("Email")
146.                End IF
147.                '*** CountryCode ***'
148.                Dim ddlCountryCode As DropDownList = CType(e.Row.FindControl("ddlEditCountryCode"), DropDownList)
149.                IF Not IsNothing(ddlCountryCode) Then
150.                    With ddlCountryCode
151.                        .DataSource = DataTableCountryCode
152.                        .DataTextField = "CountryName"
153.                        .DataValueField = "CountryCode"
154.                        .DataBind()                    
155.                    End With                       
156.                    ddlCountryCode.SelectedIndex = ddlCountryCode.Items.IndexOf(ddlCountryCode.Items.FindByValue(e.Row.DataItem("CountryCode")))
157.                End IF
158.                '*** Budget ***'
159.                Dim txtBudget As TextBox = CType(e.Row.FindControl("txtEditBudget"), TextBox)
160.                IF Not IsNothing(txtBudget) Then
161.                    txtBudget.Text = e.Row.DataItem("Budget")
162.                End IF
163.                '*** Used ***'
164.                Dim txtUsed As TextBox = CType(e.Row.FindControl("txtEditUsed"), TextBox)
165.                IF Not IsNothing(txtUsed) Then
166.                    txtUsed.Text = e.Row.DataItem("Used")
167.                End IF
168. 
169.            End IF
170. 
171.    End Sub
172. 
173.    Sub modUpdateCommand(s As Object, e As GridViewUpdateEventArgs)
174. 
175.        '*** CustomerID ***'
176.        Dim txtCustomerID As TextBox = CType(myGridView.Rows(e.RowIndex).FindControl("txtEditCustomerID"), TextBox)
177.        '*** Name ***'
178.        Dim txtName As TextBox = CType(myGridView.Rows(e.RowIndex).FindControl("txtEditName"), TextBox)
179.        '*** Email ***'
180.        Dim txtEmail As TextBox = CType(myGridView.Rows(e.RowIndex).FindControl("txtEditEmail"), TextBox)
181.        '*** CountryCode ***'
182.        Dim ddlCountryCode As DropDownList = CType(myGridView.Rows(e.RowIndex).FindControl("ddlEditCountryCode"), DropDownList)
183.        '*** Budget ***'
184.        Dim txtBudget As TextBox = CType(myGridView.Rows(e.RowIndex).FindControl("txtEditBudget"), TextBox)
185.        '*** Used ***'
186.        Dim txtUsed As TextBox = CType(myGridView.Rows(e.RowIndex).FindControl("txtEditUsed"), TextBox)
187. 
188.        strSQL = "UPDATE customer SET CustomerID = '" & txtCustomerID.Text & "' " & _
189.        " ,Name = '" & txtName.Text & "' " & _
190.        " ,Email = '" & txtEmail.Text & "' " & _
191.        " ,CountryCode = '" & ddlCountryCode.SelectedItem.Value & "' " & _
192.        " ,Budget = '" & txtBudget.Text & "' " & _
193.        " ,Used = '" & txtUsed.Text & "' " & _
194.        " WHERE CustomerID = '" & myGridView.DataKeys.Item(e.RowIndex).Value & "'"
195.        objCmd = New OleDbCommand(strSQL, objConn)
196.        objCmd.ExecuteNonQuery()
197. 
198.        myGridView.EditIndex = -1
199.        myGridView.ShowFooter = True
200.        BindData()
201.    End Sub
202. 
203.</script>
204.<html>
205.<head>
206.    <title>ThaiCreate.Com ASP.NET - GridView</title>
207.</head>
208.<body>
209.<form id="form1" runat="server">
210.<asp:GridView id="myGridView" runat="server" AutoGenerateColumns="False"
211.    ShowFooter="True"
212.    DataKeyNames="CustomerID"
213.    OnRowEditing="modEditCommand"
214.    OnRowCancelingEdit="modCancelCommand"
215.    OnRowDeleting="modDeleteCommand"
216.    OnRowUpdating="modUpdateCommand"
217.    OnRowCommand="myGridView_RowCommand"
218.    OnRowDataBound="myGridView_RowDataBound">
219. 
220.    <Columns>
221. 
222.    <asp:TemplateField HeaderText="CustomerID">
223.        <ItemTemplate>
224.            <asp:Label id="lblCustomerID" runat="server" Text='<%# DataBinder.Eval(Container, "DataItem.CustomerID") %>'></asp:Label>
225.        </ItemTemplate>
226.        <EditItemTemplate>
227.            <asp:TextBox id="txtEditCustomerID" size="5" runat="server"></asp:TextBox>
228.        </EditItemTemplate>
229.        <FooterTemplate>
230.            <asp:TextBox id="txtAddCustomerID" size="5" runat="server"></asp:TextBox>
231.        </FooterTemplate>
232.    </asp:TemplateField>
233. 
234.    <asp:TemplateField HeaderText="Name">
235.        <ItemTemplate>
236.            <asp:Label id="lblName" runat="server" Text='<%# DataBinder.Eval(Container, "DataItem.Name") %>'></asp:Label>
237.        </ItemTemplate>
238.        <EditItemTemplate>
239.            <asp:TextBox id="txtEditName" size="10" runat="server"></asp:TextBox>
240.        </EditItemTemplate>
241.        <FooterTemplate>
242.            <asp:TextBox id="txtAddName" size="10" runat="server"></asp:TextBox>
243.        </FooterTemplate>
244.    </asp:TemplateField>
245. 
246.    <asp:TemplateField HeaderText="Email">
247.        <ItemTemplate>
248.            <asp:Label id="lblEmail" runat="server" Text='<%# DataBinder.Eval(Container, "DataItem.Email") %>'></asp:Label>
249.        </ItemTemplate>
250.        <EditItemTemplate>
251.            <asp:TextBox id="txtEditEmail" size="20" runat="server"></asp:TextBox>
252.        </EditItemTemplate>
253.        <FooterTemplate>
254.            <asp:TextBox id="txtAddEmail" size="20" runat="server"></asp:TextBox>
255.        </FooterTemplate>
256.    </asp:TemplateField>
257. 
258.    <asp:TemplateField HeaderText="CountryCode">
259.        <ItemTemplate>
260.            <asp:Label id="lblCountryCode" runat="server" Text='<%# DataBinder.Eval(Container, "DataItem.CountryCode") %>'></asp:Label>
261.        </ItemTemplate>
262.        <EditItemTemplate>
263.            <asp:DropDownList id="ddlEditCountryCode" runat="server"></asp:DropDownList>
264.        </EditItemTemplate>
265.        <FooterTemplate>
266.            <asp:DropDownList id="ddlAddCountryCode" runat="server"></asp:DropDownList>
267.        </FooterTemplate>
268.    </asp:TemplateField>
269. 
270.    <asp:TemplateField HeaderText="Budget">
271.        <ItemTemplate>
272.            <asp:Label id="lblBudget" runat="server" Text='<%# DataBinder.Eval(Container, "DataItem.Budget") %>'></asp:Label>
273.        </ItemTemplate>
274.        <EditItemTemplate>
275.            <asp:TextBox id="txtEditBudget" size="6" runat="server"></asp:TextBox>
276.        </EditItemTemplate>
277.        <FooterTemplate>
278.            <asp:TextBox id="txtAddBudget" size="6" runat="server"></asp:TextBox>
279.        </FooterTemplate>
280.    </asp:TemplateField>
281. 
282.    <asp:TemplateField HeaderText="Used">
283.        <ItemTemplate>
284.            <asp:Label id="lblUsed" runat="server" Text='<%# DataBinder.Eval(Container, "DataItem.Used") %>'></asp:Label>
285.        </ItemTemplate>
286.        <EditItemTemplate>
287.            <asp:TextBox id="txtEditUsed" size="6" runat="server"></asp:TextBox>
288.        </EditItemTemplate>
289.        <FooterTemplate>
290.            <asp:TextBox id="txtAddUsed" size="6" runat="server"></asp:TextBox>
291.            <asp:Button id="btnAdd" runat="server" Text="Add" CommandName="Add"></asp:Button>
292.        </FooterTemplate>
293.    </asp:TemplateField>
294. 
295.    <asp:CommandField ShowEditButton="True" CancelText="Cancel" DeleteText="Delete" EditText="Edit" UpdateText="Update" HeaderText="Modify"  />
296.    <asp:CommandField ShowDeleteButton="True" HeaderText="Delete" />
297.     
298.    </Columns>
299.</asp:GridView>
300.</form>
301.</body>
302.</html>




Screenshot

ASP.NET GridView Control

ASP.NET GridView Control

   
Hate it
Don't like it
It's ok
Like it
Love it
Share


ช่วยกันสนับสนุนรักษาเว็บไซต์ความรู้แห่งนี้ไว้ด้วยการสนับสนุน Source Code 2.0 ของทีมงานไทยครีเอท


ลองใช้ค้นหาข้อมูล


   


Bookmark.   
       
  By : ThaiCreate.Com Team (บทความเป็นลิขสิทธิ์ของเว็บไทยครีเอทห้ามนำเผยแพร่ ณ เว็บไซต์อื่น ๆ)
  Score Rating :  
  Create/Update Date : 2010-09-10 17:35:52 / 2017-03-28 21:20:27
  Download : Download  ASP.NET GridView Control - DropDownList in GridView
 Sponsored Links / Related

 
ASP.NET GridView Control
Rating :

 
ASP.NET GridView Control - DataBind
Rating :

 
ASP.NET GridView Control - AlternateRows
Rating :

 
ASP.NET GridView Control - TemplateField
Rating :

 
ASP.NET GridView Control - RowDataBound
Rating :

 
ASP.NET GridView Control - AllowSorting
Rating :

 
ASP.NET GridView Control - AllowPaging
Rating :

 
ASP.NET GridView Control - AllowSorting and AllowPaging
Rating :

 
ASP.NET GridView Control - FindControl
Rating :

 
ASP.NET GridView Control - DataSet,DataTable,TableRows
Rating :

 
ASP.NET GridView Control - RowCommand
Rating :

 
ASP.NET GridView Control - XML
Rating :

 
ASP.NET GridView Control - AccessDataSource
Rating :

 
ASP.NET GridView Control - VS 2005,2008,2010 (FX 2.0,3.5,4.0)
Rating :

 
ASP.NET GridView Control - Microsoft Access (.mdb) - System.Data.OleDb
Rating :

 
ASP.NET GridView Control - SQL Server 2000,2005,2008 - System.Data.SqlClient
Rating :

 
ASP.NET GridView Control - MySQL Database - MySql.Data.MySqlClient
Rating :

 
ASP.NET GridView Control - Oracle Database - System.Data.OracleClient
Rating :


ThaiCreate.Com Forum
Comunity Forum Free Web Script
Jobs Freelance Free Uploads
Free Web Hosting Free Tools

สอน PHP ผ่าน Youtube ฟรี
สอน Android การเขียนโปรแกรม Android
สอน Windows Phone การเขียนโปรแกรม Windows Phone 7 และ 8
สอน iOS การเขียนโปรแกรม iPhone, iPad
สอน Java การเขียนโปรแกรม ภาษา Java
สอน Java GUI การเขียนโปรแกรม ภาษา Java GUI
สอน JSP การเขียนโปรแกรม ภาษา Java
สอน jQuery การเขียนโปรแกรม ภาษา jQuery
สอน .Net การเขียนโปรแกรม ภาษา .Net
Free Tutorial
สอน Google Maps Api
สอน Windows Service
สอน Entity Framework
สอน Android
สอน Java เขียน Java
Java GUI Swing
สอน JSP (Web App)
iOS (iPhone,iPad)
Windows Phone
Windows Azure
Windows Store
Laravel Framework
Yii PHP Framework
สอน jQuery
สอน jQuery กับ Ajax
สอน PHP OOP (Vdo)
Ajax Tutorials
SQL Tutorials
สอน SQL (Part 2)
JavaScript Tutorial
Javascript Tips
VBScript Tutorial
VBScript Validation
Microsoft Access
MySQL Tutorials
-- Stored Procedure
MariaDB Database
SQL Server Tutorial
SQL Server 2005
SQL Server 2008
SQL Server 2012
-- Stored Procedure
Oracle Database
-- Stored Procedure
SVN (Subversion)
แนวทางการทำ SEO
ปรับแต่งเว็บให้โหลดเร็ว


Hit Link
   





ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2025 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่