0

我有一个带有 DataPager 控件的 ListView。我正在尝试显示一系列问题。每个问题及其选择都属于列表视图中的一个项目,我每页显示一个问题。选项是启用了自动回发的单选按钮。现在,根据用户对第一个问题的回答,我想过滤列表视图中的其余问题,以仅显示与用户选择相关的问题。此外,我不想从列表视图中完全删除其他问题,因为如果用户导航到第一个问题并更改他的回答,我希望列表相应地更改。有没有办法动态隐藏包含不相关问题的页面?

谢谢。

注意:列表项由自定义 sql 查询填充: SELECT questionNumber,questionText,OptionA,OptionB,OptionC,OptionD,OptionE,OptionF,OptionG,OptionH,OptionI,OptionJ,OptionK,OptionL,Other,questionTag,subType from Questionairre

在此查询中,“subType”字段中的值应与第一个问题中的选择进行比较。第一个问题的子类型字段将不被检查。以下代码是我到目前为止所拥有的。变量“firstChoice”是存储从第一个问题回发的值的静态变量。

 protected void ListView_ItemDataBound(object sender, ListViewItemEventArgs e)
    {
        SqlConnection conn = new SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString);

        ListViewDataItem di = (ListViewDataItem)e.Item;

        Label q=new Label();
        foreach(Control control in di.Controls)
        {

            if (control.GetType() == typeof(Label))
            {
                q = (Label)control;

                if (q.ID == "subType" && q.Text != firstChoice)
                    {
                        di.Visible = false;


                    }
            }
        }

    }
4

0 回答 0