问题描述
这是随机抽题和实现的代码,请问怎么得到用户对所有题的选择结果??
解决方案
解决方案二:
if(radioButton1.Checked==true)以此类推用foreach遍历你的radioButton控件
解决方案三:
创建RadioButton的时候,指定Name的属性值,忘了有没有这个属性值了,反正找个可以指定值的属性就好有点啰嗦了,返回正题:可以设计为:RdBtn+题号+选项,如:for(inti=1;i<=50;i++){……你的逻辑代码for(intj=1;j<=4;j++){RadioButtonRd=newRadioButton();Rd.Name=RdBtn+i.ToString("00")+j;//这里i占两位,因为只有50道题,如果随机抽取的题数比较多,可以设置3位,或者更多。反正自己去定义规则就好了。j代表4个答案}}最后根据选中的RadioButton.Name值去判断就好了。以上都是手打的代码,不知道正确不,只是描述这个意思。
解决方案四:
在你写下混乱的代码之前,最好学到一点基本的设计的艺术。将每一个问题封装为一个自定义的用户控件,也就是ascx,然后你就可以为此控件自定义接口上的业务属性。在动态加载这类用户控件之后,任何时候,你也可以访问业务属性来遍历获取它。而出试卷的应用程序根本不用管这个用户控件内部是如何实现的,就好像你使用GridView的时候根本不用过度考虑GridView的实现(顶多需要套用如何查找模板上你自定义的控件而已)。不会封装用户控件,那么顶多也就是个维护人员。他拼凑出来的“豆腐渣工程”代码,不出6个月就定会显现出带来了越来越大的成本,甚至最终让一个公司在自己辛苦维系多年的老用户面前名誉扫地。或许在一个小公司里没人能够实际地控制维护人员冒充开发人员来写代码,但是在一个正规的项目里则一定是注重于首先对自定义控件、或者javascript插件等的设计,然后才会去开发。
解决方案五:
在写一个小破“范例”的时候,在给刚上学的学员写最简单例子的时候,可能会用这种堆砌起来的几十行代码。但是你不但应该学会拼凑基本代码,而且应该学会把握这个尺度。知道产品需求重构到什么时候,就应该进行高一层次的重构设计和开发了。
解决方案六:
解决方案七:
设置此值,然后绑定控件的选中事件。==>非正式代码:radiobutton.CheckeChanged+=(sender,e)=>{varc=(senderasradiobutton);c.Parent.Tag=c.Value;};
==>遍历所有panel获取所有结果,也可以找出没选填的panel
解决方案八:
control.tag怎么设置