0

人物ビュー モデル:

public class Person {
    public string Name { get; set; }
    public List<Person> Relatives { get; set; }
    public bool IsSelected { get; set; }
}

クラスのコレクション プロパティにバインドされた を含むasp:FormViewコントロールがページにあります。asp:GridViewPerson

<asp:FormView ID="ui_frmMain" runat="server" DefaultMode="Edit" OnCallingDataMethods="ui_frmMain_CallingDataMethods" SelectMethod="GetItems" UpdateMethod="UpdateItems" ItemType="Person">
    <EditItemTemplate>
        <%# Item.Name %>
        <asp:GridView ID="..." runat="server" DataSource='<%# Bind("Relatives") %>' ItemType="Person">
             <ItemTemplate>
                        <asp:TemplateField>
                            <ItemTemplate>
                                <asp:CheckBox ID="Selected" runat="server" Checked='<%# Bind("IsSelected") %>' />
                            </ItemTemplate>
                        </asp:TemplateField>
             </ItemTemplate>
        </asp:GridView>
    <EditItemTemplate>
</asp:FormView>

モデルを UpdateMethod に戻すために .Net 4.5 データ バインディングを使用していますがUpdateItems(Person person)Relativesプロパティは常に null です。

次の方法はありますか?

  • グリッドビューからの双方向バインド
  • グリッドビューの CheckBox をIsSelectedモデルのプロパティにバインドします
4

1 に答える 1