什麼是最好的控制/我可以用來從數據庫中顯示數據的方式,用戶可以在其中編輯一些數據,而其他數據則不能。 我不需要使用數據網格。 我需要從數據庫中讀取每個數據,並自動進行顯示/編輯控制它..自動對來自數據庫的數據進行顯示/編輯控制
類似:
什麼是最好的控制/我可以用來從數據庫中顯示數據的方式,用戶可以在其中編輯一些數據,而其他數據則不能。 我不需要使用數據網格。 我需要從數據庫中讀取每個數據,並自動進行顯示/編輯控制它..自動對來自數據庫的數據進行顯示/編輯控制
類似:
DataTable myTable = myRow.Table;
foreach (DataColumn nextCol in myTable.Columns)
{
// filter out Name, Age, ID, Salary
// if nextCol is Name, Age, ID, or Salary
// continue
// add a label and text box for next column
Label nextLabel = new Label();
nextLabel.Text = nextCol.Caption;
// add next label to your control
// add a text box for the next column
TextBox nextTb = new TextBox();
// add next text box to your control
// assume your table sets up columns as write enabled or read only
nextTb.ReadOnly = nextCol.ReadOnly;
// keep track of write enabled text boxes - SEE BELOW
if (!nextCol.ReadOnly)
{
dataCols.Add(nextCol.Caption, nextCol);
textBoxes.Add(nextCol.Caption, nextTb);
}
}
你需要跟蹤的是啓用了寫入文本框和它們與表列,以便您可以在用戶關閉對話框時更新數據行。你可以用很多方法來做到這一點。關鍵的是,這可以是兩個Dictionary,每個鍵都由數據欄標題。一個字典包含數據列,另一個字典包含相應的文本框。然後,當用戶關閉對話框時,可以使用文本框值更新列值。
Dictionary<String, DataColumn> dataCols;
Dictionary<String, TextBox> textBoxes;
foreach (String nextColName in dataCols.Keys)
myRow[dataCols[nextColName]] = (Object)textBoxes[nextColName].Text;
您可以使用jQuery的數據表。它也是可編輯的。
當DataTables Editable插件被初始化時,它將更新,刪除和添加請求發送到服務器端。 JQuery DataTables可編輯插件使用戶能夠選擇和刪除表中的行。當用戶按下刪除按鈕時,AJAX請求會被刪除的記錄的id信息。
編輯單元格的值
編輯單元通過點擊在線完成。當用戶完成編輯時,包含單元格位置和單元格值的AJAX請求將發送到服務器端。
更新請求具有以下參數:
值 - 編輯後的文本
ID - 被編輯(ID被放置在TR標籤包圍細胞的記錄的編號已被編輯)
ColumnID的 - 已被編輯的單元格的列的位置
columnPosition - 已被編輯的單元格的列的位置(隱藏的列不計算在內)
ROWID - 包含已被編輯
服務器應的單元格的行編號如果單元在服務器端成功更新,則返回單元格的新值或錯誤消息。
代碼初始化jQueryData表
您可以使用此代碼
<script language="javascript" type="text/javascript">
$(document).ready(function() {
$('#myDataTable').dataTable().makeEditable();
});
</script>
這對於asp?我使用winform親愛的 – Aan 2013-04-29 12:07:34