0

我有一个网格视图,其中每一行(只有 1 列)有 1 个单选按钮、2 个下拉菜单和 1 个单选按钮列表。

最初,我遇到了将单选按钮选择限制为一个的问题。但后来我通过使用下面的代码实现了。

selectedRadio = (RadioButton)sender.Text;
foreach (DataListItem dlItem in datalist.Items)
        {
            GridView grid = (GridView)dlItem.FindControl("gvList");
            if (grid != null)
            {
                foreach (GridViewRow gridRow in grid.Rows)
                {
                    RadioButton rdo = gridRow.FindControl("radio") as RadioButton;

                    string radioname = rdo.Text;

                    if (selectedRadio == radioname)
                    {
                        if (dummyarray.Contains(selectedRadio))
                        {
                           dummyarray.Remove(radioname);
                            rdo.Checked = false;
                        }

/* 检查新选择 */

                        else
                        {
                            if (!dummyarray.Contains(selectedRadio))
                            {
                                dummyarray.Add(radioname);
                            }
                            rdo.Checked = true;
                        }


                    }
                    else
                    {
                        rdo.Checked = false;
                    }
                }
            }
        }

作为存储在 dummyarray 中的先前选择的值(它具有 ViewState 属性),它将取消选中该单选按钮并检查新的单选按钮。

现在的问题是在检查新的单选按钮之后。并在选择其关联下拉菜单时,会发生回发,并且当前值存储在虚拟数组中。它再次取消选择。

我再次未能满足我的要求。

4

0 回答 0