由于项目需要,编写了一个多态加载radiolist控件,显示出现了问题,直接上代码:
1 Literal littxt = new Literal(); 2 3 Literal litti = new Literal(); 4 5 RadioButtonList cdk = new RadioButtonList(); 6 7 cdk.ID = "cdk" + i.ToString(); 8 9 cdk.TextAlign=TextAlign.Right; 10 11 12 cdk.RepeatDirection = RepeatDirection.Vertical; 13 14 littxt.Text = i.ToString() + "、" + Server.HtmlEncode(sdr["TestContent"].ToString()) + "<br><Blockquote>"; 15 16 litti.Text = "</Blockquote>"; 17 18 //添加选项A 19 cdk.Items.Add("A." + Server.HtmlEncode(sdr["TestAns1"].ToString())); 20 21 //添加选项B 22 cdk.Items.Add("B." + Server.HtmlEncode(sdr["TestAns2"].ToString())); 23 24 //添加选项C 25 cdk.Items.Add("C." + Server.HtmlEncode(sdr["TestAns3"].ToString())); 26 27 //添加选项D 28 cdk.Items.Add("D." + Server.HtmlEncode(sdr["TestAns4"].ToString())); 29 30 cdk.Font.Size = 11; 31 32 for (int j = 1; j <= 4; j++) 33 { 34 cdk.Items[j - 1].Value = j.ToString(); 35 } 36 37 Ans += sdr[6].ToString(); 38 39 if (Session["a"] == null) 40 { 41 Session["ANS"] = Ans; 42 } 43 44 Panel1.Controls.Add(littxt); 45 Panel1.Controls.Add(cdk); 46 Panel1.Controls.Add(litti); 47 48 i++; 49 TNum++;
显示如下:
radio本来应该显示在选项前面,现在错位了,求大神告知解决方法!
设置cdk为横向排列
已经尝试了,Radio还是在选项上面
@那年的冬天:
应该是这样,类似的语法是什么我记得不太清楚
cdk.Items.Add(new ListItem(key, valu));
@Rich.T: 尝试了,还是一样的。我在想是不是因为放在table里面的原因,试了一下还是这样,可以看到前面的按钮和标题是出于同一个<td>里面~
@那年的冬天: 不要用Literal,Literal是占位符,直接上字符串