是否在转发器中保存dropdownlist值?

问题描述

| 我已经在中继器上的
dropdownlist
上检索了数据库(DescriptionCode)。 现在,我正在尝试将我选择的dropdownlist值保存/添加/插入到我的数据库中,但是我 失败了 非常感谢您提供的任何帮助。谢谢!
 protected void GeneralRepeater_OnItemDataBound(object sender,RepeaterItemEventArgs e)
    {
        if (e.Item.ItemType == ListItemType.Item ||
            e.Item.ItemType == ListItemType.AlternatingItem)
        {
            DropDownList myDDL = (DropDownList)e.Item.FindControl(\"GeneralDDL\");
            Diagnosis oDiagnosis = new Diagnosis();
            PlanOfCare oPlanOfCare = new PlanOfCare();
            DataView dv = new DataView(oDiagnosis.GetDiagnosis());
            myDDL.DataSource = PatientDiagnosis1;
            myDDL.DataTextField = \"DiagnosisCode\";
            myDDL.DataValueField = \"DiagnosisCode\";
            myDDL.DataBind();

            //PUT AN EMPTY FIELD FOR DROPDOWNLIST
            ListItem LI = new ListItem(\"\",\"\");
            myDDL.Items.Insert(0,LI);
            myDDL.SelectedValue = \"0\";



        }
    }


 protected void cmdsave_Click(object sender,EventArgs e)
    {
    oPlanofCareSave.DiagnosesCode = //[1]this must the selected value of dropdownlist inside of repater
    PlanSave(ooPlanofCareSave);
}
    

解决方法

DropDownList myDDL = (DropDownList)GeneralRepeater.Items[indexvalue].FindControl(\"GeneralDDL\");

oPlanofCareSave.DiagnosesCode = myDDL.SelectedValue;
这样很容易做到     ,关于cmdSave按钮,该按钮位于中继器内部 您需要在每一行中找出myDDL,对于每一行,您都需要获取此值。
foreach (RepeaterItem rptItem in RepeaterName.Rows)
{
         DropDownList myDDL = (DropDownList)rptItem.FindControl(\"myDDL\");
}