RadiobuttonList1.DataSource = 数据集(DataSet或者DataTable.DefaultView)RadiobuttonList.DataTextFiled = 数据集.Table[0].Column["字段名1"];
RadiobuttonList.DataTextFiled = 数据集.Table[0].Column["字段名2"];RadiobuttonList.DataBind();没用过RadiobuttonList,但是我在MobileWebPage上用List是可以这样用的,应该大同小异。具体代码可能不一样(比如是Column还是Columns,记不清楚了),但实现原理应该差不多。

解决方案 »

  1.   

    ICollection CreateDataSource() {
           DataTable dt = new DataTable();
           DataRow dr;
     
           dt.Columns.Add(new DataColumn("IntegerValue", typeof(Int32)));
           dt.Columns.Add(new DataColumn("StringValue", typeof(string)));
           dt.Columns.Add(new DataColumn("DateTimeValue", typeof(DateTime)));
           dt.Columns.Add(new DataColumn("BoolValue", typeof(bool)));
           dt.Columns.Add(new DataColumn("CurrencyValue", typeof(double)));
     
           for (int i = 0; i < 9; i++) {
              dr = dt.NewRow();
     
              dr[0] = i;
              dr[1] = "Item " + i.ToString();
              dr[2] = DateTime.Now;
              dr[3] = (i % 2 != 0) ? true : false;
              dr[4] = 1.23 * (i+1);
     
              dt.Rows.Add(dr);
           }
     
           DataView dv = new DataView(dt);
           return dv;
        }
     
        void Page_Load(Object sender, EventArgs e) {
           if (!IsPostBack) {
              RadioButtonList1.DataSource = CreateDataSource();
              RadioButtonList1.DataTextField="StringValue";
              RadioButtonList1.DataValueField="CurrencyValue";
              RadioButtonList1.DataBind();
           }
        }
      

  2.   

    RadiobuttonList.DataTextFiled = 数据集里面对应建的名称
    RadiobuttonList.DataValuefiled = 数据集里面对应建 (一般是主建)
      

  3.   

    private void DataList1_ItemDataBound(object sender, DataListItemEventArgs e)
    {
     if(e.Item.ItemIndex >-1)
      {
       Label lbl = (Lable)e.Item.FindControl("lable1");
       string questID = lbl.Text;//问题ID
       RadioButtonList tmp = (RadioButtonList)e.Item.FindControl("RadioButtonList1");
       
       tmp.DataSource = getdateByquestID();//自己写这个方法,根据问题id取数据
       tmp.DataTextFiled =...;
       tmp.DataValueFiled = ...;
       tmp.DataBind();
     }
    }
      

  4.   

    上面的方法好小象不行啊
    只有数据库里面有一章表 包括Polls_Question_ID问题ID
    Polls_Question(问题)
    Polls_Option1,Polls_Option2,Polls_Option3,Polls_Option4,Polls_Option5
    都是选项,关键是上面的方法怎么能用SQL语句来完成呢?
      

  5.   

    To: Eddie005(暴走005) 大哥我想你的方法可能实现不了啊,我原来就尝试类似的思路,看:
    前台:
    <asp:datalist id="question" runat="server" >
      <ItemTemplate>

    <%#DataBinder.Eval(Container.DataItem,"Polls_Question")%> <asp:RadioButtonList id=RadioButtonList1 runat="server"  
    DataSource='<%# GetDataSoure(DataBinder.Eval(Container.DataItem,"Polls_Qutetion_ID").ToString())%>'>

         </asp:RadioButtonList>

    </ItemTemplate>
    </asp:datalist>上面有个GetDataSour的方法,我在后台代码写一个函数,可以显示效果public ArrayList GetDataSoure(string _ID)
    {
    string conntr=System.Configuration.ConfigurationSettings.AppSettings["connstr"].ToString(); string SQL="SELECT Polls_Option1,Polls_Option2,Polls_Option3,Polls_Option4,Polls_Option5 FROM Polls_Question WHERE Polls_Qutetion_ID='"+_ID.Trim()+"'";
                     
    ArrayList ar=new ArrayList();
    SqlConnection conn=new SqlConnection(conntr);
    SqlCommand    comm=new SqlCommand(SQL,conn);
    conn.Open();
    SqlDataReader dr=comm.ExecuteReader();

    dr.Read();
    if(dr["Polls_Option1"].ToString()!="")
    {
    ar.Add(dr["Polls_Option1"].ToString());

    }
    if(dr["Polls_Option2"].ToString()!="")
    {
    ar.Add(dr["Polls_Option2"].ToString());

    }
    if(dr["Polls_Option3"].ToString()!="")
    {
    ar.Add(dr["Polls_Option3"].ToString());

    }
    if(dr["Polls_Option4"].ToString()!="")
    {
    ar.Add(dr["Polls_Option4"].ToString());

    }
    if(dr["Polls_Option5"].ToString()!="") {
    ar.Add(dr["Polls_Option5"].ToString());
    }


    conn.Close();

    //question.FindControl(RadioButtonList1).DataBind();
    //RadioButtonList1.DataSource=ar;
    //RadioButtonList1.DataTextField=""
    //RadioButtonList1.DataBind();
    return ar;
    }并不能绑定DataValueFiled啊:((1)问题
    A;...B:....C:...
    依次下去,但是没有用,因为无法绑定DataValueFile所以不能判断客户选了什么
      

  6.   

    (1)问题
    A;...B:....C:...
    依次下去,但是没有用,因为无法绑定DataValueFile所以不能判断客户选了什么
    --------------------------------------------------------------------------
    回应:RadioButtonList 可以横向也可以竖向排列;
          为什么就不能多想一下,既然绑定都做了,取有什么难得?
          RadioButtonList tmpList = (RadioButtonList)DataList1.Items[???].FindControl("RadioButtonList1");
           string answer答案 = tmpList.SelectedValue;不就知道客户选了什么了吗
      

  7.   

    只有数据库里面有一章表 包括Polls_Question_ID问题ID
    Polls_Question(问题)
    Polls_Option1,Polls_Option2,Polls_Option3,Polls_Option4,Polls_Option5
    --------------------------------------------------------------------------
    数据表设计得不好,不过先不论
    可以把你的GetDataSoure方法改写一下,不要用ArrayList,用DataTable吧