【问题标题】:How to Copy Content and Add New Record in Telerik Radgrid如何在 Telerik Radgrid 中复制内容并添加新记录
【发布时间】:2015-04-17 17:54:54
【问题描述】:

好的,基本上我有一个只包含 RadGrid 的母版页。我正在使用自定义弹出 WebUserControl 表单来处理更新/插入控件的输入。当我进入编辑模式时,我有一个名为“复制和添加新记录”的按钮。当用户单击此按钮时,我想复制 2/3 的页面内容,打开一条新记录,然后将该信息粘贴到相应的文本框中。

复制或粘贴信息没有问题。问题在于关闭我当前的编辑表单,然后打开一个新的记录表单。我尝试使用以下方法关闭表单:

Dim temp As RadGrid = Parent.Page.FindControl("rgRT")
temp.MasterTableView.ClearEditItems()
temp.MasterTableView.IsItemInserted = True

然后将上面的语句设置为true来尝试打开新的记录表单。然而它没有用。弹出编辑表单仍然在同一位置,我没有收到任何错误,唯一发生的事件是自动回发。我觉得这是一件非常容易的事情,但我一生都无法弄清楚。

【问题讨论】:

    标签: asp.net vb.net telerik radgrid


    【解决方案1】:

    尝试在清除插入项后添加Rebind() 调用。这应该将您的网格置于默认(查看模式)并删除 IsItemInserted = True 调用。

    尝试在客户端注册一个脚本来初始化插入,使其进入编辑模式:http://www.telerik.com/forums/how-to-add-new-row-in-radgrid-clientside-which-should-be-inline-and-stay-in-editmode#hJ-0yiaxakaxzdOf-UXDYw(提示:您可能希望使用Sys.Application.Load事件来执行您的代码,较早的调用可能会导致错误,例如下面)。

    string script = "function f(){$find(\"" + RadGrid1.ClientID + "\").get_masterTableView().fireCommand("InitInsert", ""); Sys.Application.remove_load(f);}Sys.Application.add_load(f);";
    ScriptManager.RegisterStartupScript(Page, Page.GetType(), "key", script, true);
    

    然后,使用 ItemCommand 事件设置默认值:Telerik RadGrid - How do I set default data on insert?

    【讨论】:

      猜你喜欢
      • 2014-05-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-01-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多