數據綁定
Default.cshtml
1 <div id="datagrid1" class="mini-datagrid" style="width:300px;height:300px;" 2 idField="id" url="/ScanPack/GetGridData" 3 showColumnsMenu="true" multiSelect="true" allowResize="true" sortMode="client"> 4 <div property="columns"> 5 <div type="checkcolumn"></div> 6 <div field="id" width="120" headerAlign="center" hideable="true" allowSort="true">Line</div> 7 <div field="name" width="120" headerAlign="center" allowSort="true">UPC</div> 8 </div> 9 </div> 10 <script type="text/javascript"> 11 mini.parse(); 12 var grid = mini.get("datagrid1"); 13 grid.load(); 14 </script>
ScanPackController:
1 public JsonResult GetGridData() 2 { 3 //造假數據 4 DataTable dt = new DataTable(); 5 dt.Columns.Add("id"); 6 dt.Columns.Add("name"); 7 DataRow dr; 8 for (int i = 1; i <= 5; i++) 9 { 10 dr = dt.NewRow(); 11 dr["id"] = i; 12 dr["name"] = "name" + i.ToString(); 13 dt.Rows.Add(dr); 14 } 15 ArrayList data = new ArrayList(); 16 data = Common.common.DataTable2ArrayList(dt);//dt轉ArrayList 17 Hashtable result = new Hashtable(); 18 result["data"] = data; 19 result["total"] = 5; 20 return Json(result); 21 }
common.cs:
public static ArrayList DataTable2ArrayList(DataTable data) { ArrayList array = new ArrayList(); for (int i = 0; i < data.Rows.Count; i++) { DataRow row = data.Rows[i]; Hashtable record = new Hashtable(); for (int j = 0; j < data.Columns.Count; j++) { object cellValue = row[j]; if (cellValue.GetType() == typeof(DBNull)) { cellValue = null; } record[data.Columns[j].ColumnName] = cellValue; } array.Add(record); } return array; }
頁面加載效果如下:
此時還沒有分頁效果,后續更新。。。