C# 使用asp.net更新Telerik网格插入

C# 使用asp.net更新Telerik网格插入,c#,asp.net,telerik,C#,Asp.net,Telerik,在下面的代码中,我有radgrid,我想在网格中插入、删除和更新。但我不知道是否要获取值并放置代码,因为我是telerik控件的新手 ASP: C# protectedvoid RadGrid1\u itemscreated(对象发送方,Telerik.Web.UI.GridItemEventArgs e) { if(e.Item为GridEditableItem&&e.Item.IsInEditMode) { 如果(!(e.项为GridEditFormInsertItem)) { Grid

在下面的代码中,我有radgrid,我想在网格中插入、删除和更新。但我不知道是否要获取值并放置代码,因为我是telerik控件的新手

ASP:


C#

protectedvoid RadGrid1\u itemscreated(对象发送方,Telerik.Web.UI.GridItemEventArgs e)
{
if(e.Item为GridEditableItem&&e.Item.IsInEditMode)
{
如果(!(e.项为GridEditFormInsertItem))
{
GridEditableItem=e.项作为GridEditableItem;
GridEditManager=item.EditManager;
GridTextBoxColumnEditor=manager.GetColumnEditor(“EmployeeTypeID”)作为GridTextBoxColumnEditor;
editor.TextBoxControl.Enabled=false;
}
}
}
受保护的void RadGrid1_ItemInserted(对象源,GridInsertedEventArgs e)
{
如果(例如异常!=null)
{
e、 ExceptionHandled=true;
SetMessage(“无法插入员工。原因:+e.Exception.Message”);
}
其他的
{
SetMessage(“插入新员工!”);
}
}
私有void显示消息(字符串文本)
{
Add(新的LiteralControl(string.Format(“{0}”,text));
}
私有void SetMessage(字符串消息)
{
gridMessage=消息;
}
私有字符串gridMessage=null;
受保护的void RadGrid1_预渲染(对象发送方,事件参数e)
{
如果(!string.IsNullOrEmpty(gridMessage))
{
显示消息(gridMessage);
}
}

您的ASPX中有insert命令处理程序,但缺少delete处理程序

<telerik:RadGrid ID="RadGrid1" 
                 runat="server"   
                 AllowPaging="True" 
                 OnDeleteCommand="RadGrid1_DeleteCommand"
                 ...


别忘了重新绑定网格以查看结果<代码>RadGrid1.DataBind()

另一个选项是在数据源中定义更新/删除/插入操作(例如,SqlDataSource控件,它具有适当的SQL命令作为属性,并且它们可以具有参数),并使用内置CRUD操作:

我不确定我是否完全了解您的问题所在。您没有看到编辑字段吗?“删除”按钮没有显示吗?@paqogomez是的,我可以查看“编辑和删除”,但我不知道在“代码隐藏”中放置“编辑代码”和“删除代码”的位置
protected void RadGrid1_ItemCreated(object sender, Telerik.Web.UI.GridItemEventArgs e)
        {
            if (e.Item is GridEditableItem && e.Item.IsInEditMode)
            {
                if (!(e.Item is GridEditFormInsertItem))
                {
                    GridEditableItem item = e.Item as GridEditableItem;
                    GridEditManager manager = item.EditManager;
                    GridTextBoxColumnEditor editor = manager.GetColumnEditor("EmployeeTypeID") as GridTextBoxColumnEditor;
                    editor.TextBoxControl.Enabled = false;
                }
            }
        }
        protected void RadGrid1_ItemInserted(object source, GridInsertedEventArgs e)
        {
            if (e.Exception != null)
            {

                e.ExceptionHandled = true;
                SetMessage("Employee cannot be inserted. Reason: " + e.Exception.Message);

            }
            else
            {
                SetMessage("New Employee is inserted!");
            }
        }
        private void DisplayMessage(string text)
        {
            RadGrid1.Controls.Add(new LiteralControl(string.Format("<span style='color:red'>{0}</span>", text)));
        }

        private void SetMessage(string message)
        {
            gridMessage = message;
        }

        private string gridMessage = null;

        protected void RadGrid1_PreRender(object sender, EventArgs e)
        {
            if (!string.IsNullOrEmpty(gridMessage))
            {
                DisplayMessage(gridMessage);
            }
        }
<telerik:RadGrid ID="RadGrid1" 
                 runat="server"   
                 AllowPaging="True" 
                 OnDeleteCommand="RadGrid1_DeleteCommand"
                 ...
protected void RadGrid1_ItemInserted(object source, GridInsertedEventArgs e)
{
    //...ADD CODE TO INSERT TO YOUR DB HERE!
    if (e.Exception != null)
    {
     ...
protected void RadGrid1_DeleteCommand(object source, GridInsertedEventArgs e)
{
    //...ADD CODE TO DELETE FROM YOUR DB HERE!
    ...