【问题标题】:Accessing TextBox in inner radgrid of nested parent radgrid访问嵌套父 radgrid 的内部 radgrid 中的 TextBox
【发布时间】:2015-11-30 07:41:38
【问题描述】:

我在嵌套的 radgrid 中有一个 radgrid,如下所示:

<telerik:RadGrid ID="RadGrid1" runat="server" GroupPanelPosition="Top" OnItemCommand="RadGrid1_ItemCommand">
    <GroupingSettings CollapseTooltip="Collapse all groups" />
    <MasterTableView AutoGenerateColumns="false" DataKeyNames="TicketID">
        <Columns>
            <telerik:GridBoundColumn DataField="Subject" FilterControlAltText="Filter Subject column" UniqueName="Subject">
            </telerik:GridBoundColumn>
        </Columns>
        <NestedViewTemplate>
            <telerik:RadGrid ID="RadGrid2" runat="server" GroupPanelPosition="Top" OnItemCommand="RadGrid2_ItemCommand">
                <GroupingSettings CollapseTooltip="Collapse all groups" />
                <MasterTableView AutoGenerateColumns="False">
                    <Columns>
                        <telerik:GridBoundColumn DataField="Body" FilterControlAltText="Filter Body column" UniqueName="Body">
                        </telerik:GridBoundColumn>
                        <telerik:GridTemplateColumn>
                            <ItemTemplate>
                                <asp:TextBox ID="txtAnswer" runat="server" Height="47px" TextMode="MultiLine"></asp:TextBox>
                                <asp:Button ID="btnAnswer" runat="server" CommandName="Answer" Text="Insert" />
                            </ItemTemplate>
                        </telerik:GridTemplateColumn>
                    </Columns>
                </MasterTableView>
            </telerik:RadGrid>
        </NestedViewTemplate>
    </MasterTableView>
</telerik:RadGrid>

我想访问内部 RadGrid 中的文本框。我用过 Item Command 方法 如下:

protected void RadGrid2_ItemCommand(object sender, GridCommandEventArgs e) 
{
    if (e.CommandName == "Answer") 
    {

        RadGrid Row = (RadGrid)((Button) sender).NamingContainer;
        TextBox txtAnswer = Row.FindControl("txtAnswer") as TextBox;
        string Body = txtAnswer.Text;
    }
}

但它不起作用,错误的全文: 无法将“Telerik.Web.UI.RadGrid”类型的对象转换为“System.Web.UI.WebControls.Button”类型。 我该怎么办?

【问题讨论】:

标签: c# asp.net telerik radgrid


【解决方案1】:

你可以找到这样的嵌套网格视图:

var NestedradGrid = 
    ((TargetRadGrid.MasterTableView.Items[0].ChildItem as GridNestedViewItem)
    .FindControl("NestedradGridID") as RadGrid);

然后你可以在里面找到任何控件。 阅读更多:https://stackoverflow.com/a/25649846/709507

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-05
    • 1970-01-01
    • 1970-01-01
    • 2014-09-11
    相关资源
    最近更新 更多