如何从FormView中的CheckBoxList保存项目?

时间:2009-08-03 12:18:23

标签: c# asp.net objectdatasource formview checkboxlist

我在 FormView 中使用 CheckBoxList 并使用 ObjectDataSource 。为了将选定的值绑定到 CheckBoxList ,我使用 FormView_DataBound 事件来查找 CheckBoxList 并设置所选项目。这很好用。

现在保存这些值正成为问题。是否可以使用 ObjectDataSource 更新这些值,或者在 ObjectDataSource 保存后是否必须保存它们?

1 个答案:

答案 0 :(得分:3)

将此代码放入formview插入事件中...迭代复选框列表并在datatable中添加所选项目并传递给BLL

CheckBoxList chklRoles = (CheckBoxList)frm.FindControl("chklRoles");
    foreach (ListItem liRole in chklRoles.Items)
    {
        if (liRole.Selected)
        {
            SecurityDS.SC_RoleRow drwRoles = dtblRoles.NewSC_RoleRow();
            drwRoles.Name = liRole.Value;
            drwRoles.IsActive = false;
            dtblRoles.Rows.Add(drwRoles);
        }
    }
    e.Values["userRole"] = dtblRoles;

ASPX页码 ..参数类型

<InsertParameters>

                    <asp:Parameter Name="userRole" Type="Object" />
                </InsertParameters>

然后在BLL中迭代数据表并相应地保存到DB中