小弟向各位朋友求助单击一个按纽DATAGRID选中的行向上或向下移动.
小弟向各位朋友求助单击一个按纽DATAGRID选中的行向上或向下移动.居然有这样的任务要求,苦了我这只小菜鸟了:( --------------------编程问答-------------------- 小弟单位用VS2003,VB.NET做 --------------------编程问答-------------------- 在数据库里建一个字段,同过个字段排序, --------------------编程问答-------------------- 向上或向下移动,可以改变这个字段的值 --------------------编程问答-------------------- 我们单位数据库表是定死的,不准我们修改,能否通过DATAGRID的ITEM直接排序? --------------------编程问答-------------------- 排序,改变序号就ok了。 --------------------编程问答--------------------
'把行往下移。
Private Sub btnDown_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDown.Click
Dim i As Int16
Dim n As Int16
Dim temp As String
If DataGrid1.CurrentRowIndex < DataGrid1.VisibleRowCount - 2 Then
n = DataGrid1.CurrentRowIndex
For i = 0 To DataGrid1.VisibleColumnCount - 1
temp = DataGrid1.Item(n, i) '以下3行只对“String”进行了交换
DataGrid1.Item(n, i) = DataGrid1.Item(n + 1, i) '如果要对所有类型交换,可以写一个函数。
DataGrid1.Item(n + 1, i) = temp
Next
End If
End Sub
'把行往上移。
Private Sub btnUp_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnUp.Click
Dim i As Int16
Dim n As Int16
Dim temp As String
If DataGrid1.CurrentRowIndex > 0 Then
n = DataGrid1.CurrentRowIndex
For i = 0 To DataGrid1.VisibleColumnCount - 1
temp = DataGrid1.Item(n, i)
DataGrid1.Item(n, i) = DataGrid1.Item(n - 1, i)
DataGrid1.Item(n - 1, i) = temp
Next
End If
End Sub --------------------编程问答-------------------- 如果数据不能改,那么你现在上下移了也保存不了,那有什么意义呢
我是在数据中用排序字段,然后页面更改,加上AJAX,效果还不错 --------------------编程问答-------------------- ajax有控件 --------------------编程问答-------------------- 我用的是Ajax.net UpdatePanel --------------------编程问答-------------------- google一下有的是例子
http://msdn2.microsoft.com/en-us/magazine/cc163829.aspx
补充:.NET技术 , ASP.NET