找到已在asp.net中选择的控件

时间:2011-05-16 00:49:52

标签: c# asp.net

您好我正在为具有一些独特控件和标准的客户构建Web应用程序。一页涉及详细的搜索功能,包括大约100个组合框和列表框。我想要做的是做一个foreach(已经更改/选择的控件){}并将其提供给函数以生成查询。有100但用户可能只使用三个进行特定搜索?

我知道必须有办法做到这一点。在此先感谢您的帮助

2 个答案:

答案 0 :(得分:0)

您可以为每个控件添加与onchange / select相关联的javascript函数,然后将已选择的项添加到javascript数组中。然后,您可以将该数组传递给查询生成,以了解要为搜索选择的变量。

答案 1 :(得分:0)

你可以使用类似的东西:

List<Control> list = new List<Control>();

public void ControlRecursive(Control Root)
    {
        if(typeof(ComboBox) == Root.GetType() && ((ComboBox)Root).Checked)
            list.Add(Root);
        else if (Root is RadListBox)
        {
            // deal with RadListBox here
        }
        // if all your other types
        // ...

        foreach (Control Ctl in Root.Controls)
            ControlRecursive(Ctl);
    }

然后使用ControlRecursive(form1);

调用此方法