Hi,
Please look at the example below.
Example
<%@ Page Language="C#" %>
<%@ Import Namespace="System.Collections.Generic" %>
<%@ Register Assembly="Ext.Net" Namespace="Ext.Net" TagPrefix="ext" %>
<script runat="server">
protected void Page_Load(object sender, EventArgs e)
{
List<object> data = new List<object>();
for (int i = 0; i < 10; i++)
{
data.Add(new
{
Name = "Rec " + i,
Column1 = i.ToString(),
Column2 = i.ToString()
});
}
this.GridPanel1.GetStore().DataSource = data;
this.GridPanel1.GetStore().DataBind();
}
</script>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>Ext.NET Example</title>
<script type="text/javascript">
var notifyDrop = function(ddSource, e, data) {
var index = ddSource.grid.getView().findRowIndex(e.target),
store = ddSource.grid.getStore();
store.remove(ddSource.dragData.selections);
index = index > store.getCount() ? store.getCount() : index;
store.insert(index, ddSource.dragData.selections);
return true;
};
</script>
</head>
<body>
<form runat="server">
<ext:ResourceManager runat="server" />
<ext:GridPanel
ID="GridPanel1"
runat="server"
Height="500"
EnableDragDrop="true"
DDGroup="ddGroup">
<Store>
<ext:Store runat="server">
<Reader>
<ext:JsonReader>
<Fields>
<ext:RecordField Name="Name" />
<ext:RecordField Name="Column1" />
<ext:RecordField Name="Column2" />
</Fields>
</ext:JsonReader>
</Reader>
</ext:Store>
</Store>
<ColumnModel>
<Columns>
<ext:Column Header="Record Name" DataIndex="Name" />
<ext:Column Header="Column 1" DataIndex="Column1" />
<ext:Column Header="Column 2" DataIndex="Column2" />
</Columns>
</ColumnModel>
<SelectionModel>
<ext:RowSelectionModel runat="server" />
</SelectionModel>
</ext:GridPanel>
<ext:DropTarget
runat="server"
Target="={GridPanel1.view.scroller.dom}"
Group="ddGroup">
<NotifyDrop Fn="notifyDrop" />
</ext:DropTarget>
</form>
</body>
</html>