ASP.NET ModelBinding复杂对象/嵌套ListViews

时间:2014-03-19 18:56:08

标签: c# asp.net listview

我想使用asp.net webforms模型绑定并在listview中嵌套listview。这可能吗?

目前我在父级上设置了DataKeyNames并使用SelectMethod中的[Control]属性,并且为父级中的每一行调用该方法,但参数为null。

任何帮助都是适当的。

<asp:ListView ID="Topics" runat="server"
    ItemType="Topic"
    SelectMethod="Topics_GetData"
    DataKeyNames="ID" >
    <EmptyDataTemplate>
                <div class="notice">
                    There are no Questions.
                </div>
            </EmptyDataTemplate>
    <ItemTemplate>
        <div><%# Item.TopicName %></div>

        <asp:ListView ID="QuestionSetListView" runat="server"
            ItemType="Question"
            SelectMethod="QuestionListView_GetData"
                 DataKeyNames="ID">
                <EmptyDataTemplate>
                    <div class="notice">
                        There are no Questions.
                    </div>
                </EmptyDataTemplate> ...

选择方法:

QuestionListView_GetData([Control("Topics")] int? ID)

有什么想法吗?

由于

1 个答案:

答案 0 :(得分:3)

很高兴看到有人使用Web Forms模型绑定做一些很酷的事情。 你绝对可以这样做,你只需要使用一个HiddenField来保存你的ID,

<div><%# Item.TopicName %></div>
<asp:HiddenField ID="TopicID" runat="server" Value="<%# Item.ID %>" />
<asp:ListView ID="QuestionSetListView" runat="server"

然后参考控件属性中的TopicID

QuestionListView_GetData([Control("TopicID")] int? ID)