protected void RadGrid4_UpdateCommand(object source,
GridCommandEventArgs e)
{
var editedItem = e.Item as GridEditableItem ;
// 获取编辑框里的 taskid 值
string taskId = editedItem.OwnerTableView.DataKeyValues[editedItem.ItemIndex]["taskId" ].ToString();
// 获取编辑框里的控件( html 里可以用 例子 1 和例子二的模式 )
string taskName = ((TextBox ) editedItem.FindControl("TextBox1" )).Text;
string description = ((TextBox ) editedItem.FindControl("TextBox2" )).Text;
string standardtime = ((TextBox ) editedItem.FindControl("TextBox3" )).Text;
string updatesql = "update Tasks set taskName='" + taskName + "',description='" + description +
"',expectedTaskLength='" + standardtime + "' where taskId='" + taskId +
"' and nonproductionTask='false'" ;
DbConnector .runSql(updatesql);
// 关闭编辑窗口
RadGrid4.MasterTableView.Items[editedItem.ItemIndex].Edit = false ;
}
protected void RadGrid4_DeleteCommand(object source, GridCommandEventArgs e)
{
string ID = e.Item.OwnerTableView.DataKeyValues[e.Item.ItemIndex]["taskId" ].ToString();
string deletesql = "delete from Tasks where taskId='" + ID + "'" ;
DbConnector .runSql(deletesql);
}
protected void RadGrid4_InsertCommand(object source, GridCommandEventArgs e)
{
var insertedItem = (GridEditFormInsertItem ) e.Item;
string taskName = ((TextBox ) insertedItem.FindControl("TextBox1" )).Text.Trim();
string description = ((TextBox ) insertedItem.FindControl("TextBox2" )).Text.Trim();
string standardtime = ((TextBox ) insertedItem.FindControl("TextBox3" )).Text.Trim();
string insertQuery =
"INSERT into Tasks(taskName,description,expectedTaskLength,nonproductionTask,workTask) values('" +
taskName + "','" + description + "','" + standardtime + "','false','false')" ;
DbConnector .runSql(insertQuery);
// 这里是关闭 insert 的窗口
e.Canceled = true ;
e.Item.OwnerTableView.IsItemInserted = false ;
RadGrid4.Rebind();
}
例子 1:
< EditFormSettings EditFormType ="Template">// 这里是设置 editfrom 类型 ,自定义模板
< EditColumn UniqueName ="EditCommandColumn1">
EditColumn >
< FormTemplate >
taskName:< asp : TextBox ID ="TextBox1" runat ="server"
Text =' <% # bind ("taskName")%> '> asp : TextBox >
< br />
description:< asp : TextBox ID ="TextBox2" runat ="server"
Text =' <% # bind ("description")%> '> asp : TextBox >
< br />
standardTime:< asp : TextBox ID ="TextBox3" runat ="server"
Text =' <% # bind ("expectedTaskLength")%> '> asp : TextBox >< asp : RegularExpressionValidator ID ="reg1" runat ="server" ControlToValidate ="TextBox3" ValidationExpression ="^[0-9]*$" ErrorMessage ="Please input the number."> asp : RegularExpressionValidator >
< br />
< asp : Button ID ="btnUpdate0" runat ="server" CommandName =' <% # (Container is GridEditFormInsertItem)
? "PerformInsert"
: "Update"%> ' Text =' <% # (Container is GridEditFormInsertItem) ? "Insert" : "Update"%> ' />
< asp : Button ID ="btnCancel0" runat ="server" CausesValidation ="False"
CommandName ="Cancel" Text ="Cancel" / >
FormTemplate >
EditFormSettings >
例子 2 :
< Columns >
< telerik : GridBoundColumn DataField ="taskId" DataType ="System.Int32"
HeaderText ="taskId" ReadOnly ="True" SortExpression ="taskId" UniqueName ="taskId"
Visible ="False">
telerik : GridBoundColumn >
< telerik : GridBoundColumn DataField ="taskName" HeaderText ="taskName"
SortExpression ="taskName" UniqueName ="taskName" ReadOnly =true>
telerik : GridBoundColumn >
< telerik : GridBoundColumn DataField ="description" HeaderText ="description"
SortExpression ="description" UniqueName ="description" ReadOnly =true>
telerik : GridBoundColumn >
< telerik : GridTemplateColumn HeaderText ="Assign">
< ItemTemplate >// 这里是自己设置 gridtable 的列
< asp : CheckBox ID ="chb" runat ="server" Checked =' <% # Convert.ToBoolean(Eval("assign")) %> ' OnCheckedChanged ="chb_CheckedChanged" AutoPostBack ="true" />
ItemTemplate >
< EditItemTemplate >// 这里是设置 editfrom 里的
< asp : CheckBox ID ="chbItemEdt" runat ="server" Checked =' <% # Convert.ToBoolean(Eval("assign")) %> ' />
EditItemTemplate >
telerik : GridTemplateColumn >
Columns >