我关注 this demo关于如何使用我的自定义新项目控件创建网格。我有一个很简单的问题 - 我在哪里定义新记录按钮,就像演示中的这个一样?
最佳答案
如果 RadGrid 的属性 AllowAutomaticInserts 设置为 True,并且网格使用 declarative data source ,您将获得默认的“添加新”按钮和行为。这就是您链接的演示中发生的事情。您可以通过多种方式控制其外观。
与网格关联的“命令项”(添加、删除、编辑等)由网格的 CommandItemTemplate 元素控制。默认情况下,此元素的外观将基于您应用于 Telerik 控件的外观。它还可以通过各种方式进行控制 style elements .)
可以自定义 CommandItemTemplate 以显示自定义按钮、非标准文本等。这是来自 Telerik's documentation on it 的示例.请注意,CommandName 属性决定了按钮执行的功能。
<CommandItemTemplate>
Custom command item template
<asp:LinkButton Style="vertical-align: bottom" ID="btnEditSelected" runat="server"
CommandName="EditSelected" Visible='<%# RadGrid1.EditIndexes.Count == 0 %>'><img style="border:0px" alt="" src="../../DataEditing/Img/Edit.gif" /> Edit Selected Customers</asp:LinkButton>
<asp:LinkButton ID="btnUpdateEdited" runat="server" CommandName="UpdateEdited" Visible='<%# RadGrid1.EditIndexes.Count > 0 %>'><img style="border:0px" alt="" src="../../DataEditing/Img/Update.gif" /> Update Customers</asp:LinkButton>
<asp:LinkButton ID="btnCancel" runat="server" CommandName="CancelAll" Visible='<%# RadGrid1.EditIndexes.Count > 0 || RadGrid1.MasterTableView.IsItemInserted %>'><img style="border:0px" alt="" src="../../DataEditing/Img/Cancel.gif" /> Cancel editing</asp:LinkButton>
<asp:LinkButton ID="LinkButton3" runat="server" CommandName="InitInsert" Visible='<%# !RadGrid1.MasterTableView.IsItemInserted %>'><img style="border:0px" alt="" src="../../DataEditing/Img/AddRecord.gif" /> Add new Customer</asp:LinkButton>
<asp:LinkButton ID="LinkButton4" runat="server" CommandName="PerformInsert" Visible='<%# RadGrid1.MasterTableView.IsItemInserted %>'><img style="border:0px" alt="" src="../../DataEditing/Img/Insert.gif" /> Add this Customer</asp:LinkButton>
<asp:LinkButton ID="LinkButton5" OnClientClick="javascript:return confirm('Delete all selected customers?')"
runat="server" CommandName="DeleteSelected"><img style="border:0px" alt="" src="../../DataEditing/Img/Delete.gif" /> Delete Selected Customers</asp:LinkButton>
<asp:LinkButton ID="LinkButton6" runat="server" CommandName="Re bindGrid"><img style="border:0px" alt="" src="../../DataEditing/Img/Refresh.gif" /> Refresh customer list</asp:LinkButton>
<br />
</CommandItemTemplate>
此外,网格的 MasterTableView 包含一个属性 CommandItemDisplay ,可用于控制按钮位置 - 值为 None、Top、TopAndBottom 或 Bottom:
<MasterTableView CommandItemDisplay="Top" ....>
关于telerik - 在 RadGrid 中添加新记录按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16793049/