如何在aspx页面中找到已选中的单选按钮

时间:2012-02-15 20:55:02

标签: c#

我有一个单选按钮列表,而不是radiobuttonlist,我需要找出哪一个被检查。容器是div。但我在这个div中也有其他控件。如何找到已选中的单选按钮? 我的代码如下:

  foreach (RadioButton rb in divContainer.Controls)
        {
            ....

        }

它出现了一个错误,其中表示"无法转换类型&System; System.Web.UI.ResourceBasedLiteralControl'输入' System.Web.UI.WebControls.RadioButton'。"

这是一个.net网络应用程序,我使用c#

2 个答案:

答案 0 :(得分:1)

您可以将循环更改为:

foreach (RadioButton rb in divContainer.Controls.OfType<WebControls.RadioButton>())
{
   ....

这将仅循环所需类型的控件。如果您不能使用Linq,您可以尝试使用“is”来知道控件是否是RadioButton,如果是这种情况则使用它,否则继续使用下一个。

答案 1 :(得分:0)

这是一所旧学校(非LINQ)的方式......

foreach (Control ctrl in divContainer.Controls)
{
  bool isRadioButton = ctrl is RadioButton;
  if (!isRadioButton)
    continue;

  RadioButton rb = ctrl as RadioButton;
 ....
}