0

当您在ItemCommand中时,任何人都知道如何在 Telerik RadGrid GridNoRecordsItem上获取控件的内容?

你可能会问,我为什么要这样做。在没有数据时显示选择控件但在有数据时隐藏选择控件会很有用。更具体地说,我有一个按钮,允许用户自动填充数据——但前提是已经没有数据。

这是我的 RadGrid GridNoRecordsItem:

<telerik:RadGrid ID="grdPrices" runat="server" AutoGenerateColumns="False"
    OnItemCommand="grdPrices_ItemCommand"
    OnNeedDataSource="grdPrices_NeedDataSource" >
    <MasterTableView DataKeyNames="Billing_Price_ID" CommandItemDisplay="Bottom">
        <Columns>
            <telerik:GridBoundColumn UniqueName="CD" HeaderText="CD" DataField="CD"/>
        </Columns>
        <NoRecordsTemplate>
            <div id="divNoRecordsEdit" runat="server" style="padding: 5px 5px;">
                <table>
                    <tr>
                        <td>Start:</td>
                        <td><telerik:RadDatePicker ID="dtStart" runat="server" /></td>
                        <td>End:</td>
                        <td><telerik:RadDatePicker ID="dtEnd" runat="server" /></td>
                        <td><asp:Button ID="btnAddPrices" runat="server" Text="Autofill" CommandName="Autofill"/></td>
                    </tr>
                </table>
            </div>
        </NoRecordsTemplate>
    </MasterTableView>
</telerik:RadGrid>

这是我的 ItemCommand:

protected void grdPrices_ItemCommand(object sender, GridCommandEventArgs e) {
    if (e.CommandName.Equals("Autofill")) {

        // This line is not OK!
        GridNoRecordsItem noRecordsItem = (GridNoRecordsItem)e.Item;

        string start = "" + noRecordsItem.FindControl("dtStart").Value;
        string end   = "" + noRecordsItem.FindControl("dtEnd").Value;
    }
}

任何人的想法?

4

1 回答 1

0

这实际上工作正常,我很高兴地说。我不知道为什么我认为这是错误的!

protected void grdPrices_ItemCommand(object sender, GridCommandEventArgs e) {
    if (e.CommandName.Equals("Autofill")) {

        // This line actually is OK!
        GridNoRecordsItem noRecordsItem = (GridNoRecordsItem)e.Item;

        string start = "" + noRecordsItem.FindControl("dtStart").Value;
        string end   = "" + noRecordsItem.FindControl("dtEnd").Value;
    }
}
于 2014-01-20T16:04:01.270 回答