Я создаю форму в ASP.Net для тиражирования бумажной формы (я не имею права в дизайне, мне поручено просто воссоздавая его в цифровом виде). В этой форме есть много вопросов в соответствии с ответом «Ответ да или нет». Если да, укажите, сколько ». Я сейчас обрабатываю его, перечисляя вопрос, а затем имея две радиообъекты в группе, один из которых говорит «да» и один «нет». Чтобы сделать это немного красивее, я использовал панели обновления Ajax, которые будут отображать только текстовое поле, чтобы сохранить это значение да, если пользователь выбирает «Да».Как обрабатывать многие «да/нет, если да <отображать текстовое поле>» в форме
Теперь я смог сделать это успешно, но каждый вопрос - это собственная группа радиообмена и имеет свою панель для обновления видимости, а это значит, что способ, которым я сейчас это делаю, - это много избыточного кода например
Protected Sub rdoShowOriginalEquipment(ByVal sender As Object, ByVal e As System.EventArgs)
If rdoOEYes.Checked = True Then
pnlOriginalEquipment.Visible = True
ElseIf rdoOENo.Checked = True Then
pnlOriginalEquipment.Visible = False
End If
End Sub
И так далее для каждого вопроса, у которого есть опция yes/no. Я не сомневаюсь, что есть лучший способ сделать это. Мне было интересно, если есть способ, которым я мог пройти панель, связанную с группой RadioButton, так что я мог бы использовать один метод в коде, который бы огонь для всех RadioButton постбэков, что-то вроде (не реальный код)
Protected Sub showPanel(RadioButtonGroup, panel)
If rdoYes.Checked = True Then
panel.Visible = True
ElseIf rdoNo.Checked = True Then
panel.Visible = False
End If
End Sub
Или есть лучший способ справиться с такими вопросами? Я открыт для другого подхода, если он сократит количество избыточного кода, который я набираю сейчас. Я использую VB, но я знаю C#, поэтому, если кто-то свободно говорит с этим ответом, у меня нет проблем с его интерпретацией.
Любая помощь очень ценится.
Удивительно, большое вам спасибо за помощь. – JMill