0

リストビューを作成し、最初のリストビュー内に別のリストビューを作成する必要があります。コードビハインドファイルに移動すると、2番目のリストビューの名前であるlistview2コントロールが表示されません。

私は何が間違っているのですか?

以下は私のマークアップコードです

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Attestation2.aspx.cs" Inherits="Attestation2" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
</head>
<body style="z-index: 1; left: 21px; top: 0px; position: absolute; height: 313px;
    width: 983px">
    <form id="form1" runat="server">
    <div>
        <asp:DropDownList ID="Entitlementdlist" runat="server" AutoPostBack="true" Visible="true"
            ToolTip="All the Requests in this dropdown are Entitlement Requests only">
        </asp:DropDownList>

        <asp:ListView ID="listview1" runat="server" ItemPlaceholderID="itemplaceholder" >
            <LayoutTemplate>         
            <asp:PlaceHolder ID="itemplaceholder" runat="server" />  
            </LayoutTemplate> 

            <ItemTemplate>
                <table style="border:1px solid black;">
                    <tr>
                        <td>Report Name</td>
                        <td><asp:TextBox ID="ReportNameLbl" runat="server" Text='<%#Eval("REPORT_DESCRIPTION.rptdesctext") %>' Width="500"></asp:TextBox> </td>
                        <td>
                        <asp:CheckBoxList ID="CheckBoxList1" runat="server" RepeatDirection="Horizontal">
                             <asp:ListItem Text="Yes" Value="Yes"></asp:ListItem>
                                <asp:ListItem Text="No" Value="No"></asp:ListItem>
                            </asp:CheckBoxList>
                        </td>
                    </tr>
                    <tr>
                        <td>Content Description</td>
                        <td>
                        <asp:Label ID="ContentDescLbl" Text='<%#Eval("REPORT_REQUEST.StopLossMax") %>' runat="server" ></asp:Label>
                        </td>
                        <td>
                        <asp:CheckBoxList ID="CheckBoxList2" runat="server" RepeatDirection="Horizontal">
                             <asp:ListItem Text="Yes" Value="Yes"></asp:ListItem>
                                <asp:ListItem Text="No" Value="No"></asp:ListItem>
                            </asp:CheckBoxList>
                        </td>




                    </tr>
                    <tr>

                    <td>
                    Frequency
                    </td>
                    <td>
                     <asp:Label ID="frequencyLbl" Text='<%#Eval("REPORT_REQUEST.reportfrequency") %>' runat="server" ></asp:Label>
                    </td>
                    <td>
                    <asp:CheckBoxList ID="CheckBoxList3" runat="server" RepeatDirection="Horizontal">
                             <asp:ListItem Text="Yes" Value="Yes"></asp:ListItem>
                                <asp:ListItem Text="No" Value="No"></asp:ListItem>
                            </asp:CheckBoxList>
                    </td>
                    </tr>
                    <tr>


                    <td>
             <asp:ListView ID="listview2" runat="server" ItemPlaceholderID="itemplaceholder1" >
            <LayoutTemplate>         
            <asp:PlaceHolder ID="itemplaceholder1" runat="server" />  
            </LayoutTemplate> 

            <ItemTemplate>

             <table style="border:1px solid black;">
                    <tr>

                        <td>Recepients</td>
                        <td>
                         <asp:Label ID="frequencyLbl" Text='<%#Eval("REPORTAlaska.reportfrequency") %>' runat="server" ></asp:Label>
                        </td>
                    </tr>
                    </table>
            </ItemTemplate>
            </asp:ListView>
                    </td>

                    </tr>
                </table>


            </ItemTemplate>
        </asp:ListView>
    </div>
    </form>
</body>
</html>
4

2 に答える 2

1

テンプレートにネストされたコントロールなので、「FindControl」メソッドを使用する必要があります。

編集:

関数を使用する場合は、MSDN でその説明を参照してください。ここで回答を待つ時間を節約できます:) 要するに、FindControl は再帰関数ではなく、コントロールがコントロールのコレクションに直接含まれていない場合選択された要素、それは機能しません。別の ListView にある ListView にアクセスしようとしているため、Page.FindControl を使用できませんが、代わりに次のようなことができます。

myListView.FindControl(...)

あなたが今アイデアを得て、それがあなたのために働くことを願っています.

于 2012-06-11T19:02:42.250 に答える
0

これは通常の動作です。ネストされた ListView は、外側の ListView のテンプレートで定義されます。特定の行の FindControl() メソッドを使用して、ネストされたリストビューにアクセスする必要があります。

たとえば、コードでこれを確認してください:コントロールの検索

于 2012-06-11T19:03:50.833 に答える