【发布时间】:2011-12-21 10:30:23
【问题描述】:
我有 3 个网格视图
第一个 gridview 启用选择,如果有任何数据,它将填充第二个 gridview。
第三个网格视图嵌套在第二个网格视图内。
但是,第三个网格视图从不显示任何单个数据.. 我错过了什么?
如果在页面加载时填充了第二个网格视图,我可以实现这一点。 这是代码 我在asp.net c#上
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False"
DataKeyNames="SurveyID" DataSourceID="SqlDataSource1">
<Columns>
<asp:BoundField DataField="SurveyID" HeaderText="SurveyID"
SortExpression="SurveyID" />
<asp:BoundField DataField="SurveyTitle" HeaderText="SurveyTitle"
SortExpression="SurveyTitle" />
<asp:CommandField ShowSelectButton="True" />
</Columns>
</asp:GridView>
<asp:SqlDataSource ID="SqlDataSource1" runat="server"
ConnectionString="<%$ ConnectionStrings:myConnectionString %>"
SelectCommand="SELECT [SurveyID], [SurveyTitle] FROM [Survey]">
</asp:SqlDataSource>
<asp:GridView ID="GridView2" runat="server" AutoGenerateColumns="False"
DataKeyNames="QuestionID" DataSourceID="SqlDataSource2">
<Columns>
<asp:BoundField DataField="QuestionID" HeaderText="QuestionID"
InsertVisible="False" ReadOnly="True" SortExpression="QuestionID" />
<asp:BoundField DataField="QuestionTitle" HeaderText="QuestionTitle"
SortExpression="QuestionTitle" />
<asp:BoundField DataField="AnswerType" HeaderText="AnswerType"
SortExpression="AnswerType" />
<asp:TemplateField>
<ItemTemplate>
<asp:GridView ID="GridView3" runat="server" AutoGenerateColumns="False"
DataSourceID="SqlDataSource1" DataKeyNames="ResultID">
<Columns>
<asp:BoundField DataField="ResultID" HeaderText="ResultID"
SortExpression="ResultID" InsertVisible="False" ReadOnly="True" />
<asp:BoundField DataField="QuestionID" HeaderText="QuestionID"
SortExpression="QuestionID" />
<asp:BoundField DataField="AnswerValue" HeaderText="AnswerValue"
SortExpression="AnswerValue" />
</Columns>
</asp:GridView>
<asp:SqlDataSource ID="SqlDataSource1" runat="server"
ConnectionString="<%$ ConnectionStrings:myConnectionString %>"
SelectCommand="SELECT * FROM [Results] WHERE ([QuestionID] = @QuestionID)">
<SelectParameters>
<asp:Parameter Name="QuestionID" Type="Int32" />
</SelectParameters>
</asp:SqlDataSource>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
<asp:SqlDataSource ID="SqlDataSource2" runat="server"
ConnectionString="<%$ ConnectionStrings:myConnectionString %>"
SelectCommand="SELECT [QuestionID], [QuestionTitle], [AnswerType] FROM [Question] WHERE ([SurveyID] = @SurveyID)">
<SelectParameters>
<asp:ControlParameter ControlID="GridView1" Name="SurveyID"
PropertyName="SelectedValue" Type="String" />
</SelectParameters>
</asp:SqlDataSource>
【问题讨论】:
-
显示您尝试过的内容。 stackoverflow.com/faq 这是 VB.NET 还是 C#?