Q
在兩行之間插入行
1
A
回答
0
你必須插入該行的數據源 - 也許是一個DataTable。
然後你必須確保網格根據你的要求排序。您需要在特定位置放置新行,因此可能需要在DataTable上實現SortOrder列,然後根據需要在綁定前明確更新該列中的值新行以下的所有行。
+0
感謝坎貝爾的回覆。我試着添加一行到數據表中,並用最新的數據表格重新綁定數據網格,但沒有運氣。新添加的行將添加到最後一行中。 – 2010-11-23 18:21:19
0
您可以將新行插入到數據源(例如DataTable)。 DataRowCollection有一個函數InsertAt,可讓您在所需位置插入行。
我會提供一個簡單的例子(在VB.Net有一個GridView,DataGrid的工作原理相同):
ASPX:
<asp:GridView ID="MyGrid" runat="server" AutoGenerateColumns="true">
</asp:GridView>
<asp:Button ID="BtnInsert" runat="server" Text="insert Obama at Position" /><asp:TextBox ID="TxtPosition" Text="0" runat="server"></asp:TextBox>
代碼隱藏:
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
If Not IsPostBack Then
BindData(getDataSource())
End If
End Sub
Private Function getDataSource() As DataTable
Dim tbl As New DataTable
Dim col As New DataColumn("ID", GetType(Int32))
tbl.Columns.Add(col)
col = New DataColumn("FirstName", GetType(String))
tbl.Columns.Add(col)
col = New DataColumn("LastName", GetType(String))
tbl.Columns.Add(col)
Dim row As DataRow = tbl.NewRow
row("ID") = 1
row("FirstName") = "Benjamin"
row("LastName") = "Franklin"
tbl.Rows.Add(row)
row = tbl.NewRow
row("ID") = 2
row("FirstName") = "Arnold"
row("LastName") = "Schwarzenegger"
tbl.Rows.Add(row)
row = tbl.NewRow
row("ID") = 3
row("FirstName") = "Albert"
row("LastName") = "Einstein"
tbl.Rows.Add(row)
row = tbl.NewRow
row("ID") = 4
row("FirstName") = "Bill"
row("LastName") = "Gates"
tbl.Rows.Add(row)
Return tbl
End Function
Private Sub BindData(ByVal source As DataTable)
Me.MyGrid.DataSource = source
Me.MyGrid.DataBind()
End Sub
Private Sub BtnInsert_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles BtnInsert.Click
Dim pos As Int32 = 0
Int32.TryParse(TxtPosition.Text, pos)
Dim source As DataTable = Me.getDataSource()
If pos < 0 OrElse pos > source.Rows.Count Then pos = 0
Dim row As DataRow = source.NewRow
row("ID") = 5
row("FirstName") = "Barack"
row("LastName") = "Obama"
source.Rows.InsertAt(row, pos)'this is the only important'
BindData(source)
End Sub
相關問題
- 1. sql - 插入兩行之間?
- 2. 插入兩個已知行之間的行在Matlab
- 3. 在SQL中插入兩行之間的行
- 4. 在表中的兩行之間插入一行
- 5. 在插入兩行中的一行時捕獲兩行之間的關係
- 6. 如何避免動態插入兩行之間的新行
- 7. 按組插入行之間的行
- 8. 在表格行之間插入邊距
- 9. 在數據集之間插入行
- 10. 在數據之間插入新行
- 11. 在行之間插入文本file.txt
- 12. 在tablerow之間插入一個新行
- 13. 如何在兩個條件之間插入換行符條件
- 14. SED語法在兩行號之間插入字符串?
- 15. Oracle - 在兩次之間每小時插入一行
- 16. 如何通過在另外兩行之間插入一行來訂購mysql表
- 17. 如何在Sql中的兩個現有行之間的表中插入一行
- 18. 如何在兩個表格行之間插入另一個表格行?
- 19. 用CSS在兩個行內塊元素之間插入換行符
- 20. 如何在Winform c#ListView中的兩行之間插入行分隔符?
- 21. 如何在sqlite管理器上的兩行之間插入另一行
- 22. 如何在HSSF(Apache POI)的現有Excel中的兩行之間插入一行
- 23. sql - 在兩條記錄之間插入
- 24. 爲什麼新行不插入兩個值之間?
- 25. Div行之間插入的差距
- 26. 插入時間之間有兩個DATETIME
- 27. 在第一行之前插入行
- 28. 插入新柱之間兩串報表
- 29. 如何插入兩種顏色之間?
- 30. 在兩個NetBeans插件版本之間進行交換
或許表現出一定的代碼你如何約束? – 2010-11-23 18:12:56