我的.aspx页面中有一个单选按钮,在后面的代码中我写了以下内容:
if (rbOnlyCreatedorUpdated.Checked == true)
{
searchObject.CreatedOrUpdatedOnValidDate = SearchCritera.OnlyCreatedOrUpdated;
}
else if (rbOnlyOld.checked == true)
{
searchObject.CreatedOrUpdatedOnValidDate = SearchCritera.OnlyOld;
}
else
{
searchObject.CreatedOrUpdatedOnValidDate = SearchCritera.AllChanged;
}
我真的不喜欢上述内容。感觉笨拙和不洁净。我希望单选按钮本身返回一个值(名为rbOnlyCreatedOrUpdatedOnValidDate,即GroupName)。
是否可能或以上是获得该值的正确方法?
答案 0 :(得分:0)
如果使用RadioButtonList
控件,则可以使用IdOfRadioButtonList.SelectedValue
访问所选的radiobuttons值。
这将为您提供一个字符串,因此您仍然需要转换到其中一个SearchCriteria类'物业自己...
如果它让你感觉更好,你可以把它变成三元运算符,如下:
searchObject.CreatedOrUpdatedOnValidDate =
rbOnlyCreatedorUpdated.Checked ? SearchCritera.OnlyCreatedOrUpdated :
rbOnlyOld.checked ? SearchCritera.OnlyOld :
SearchCritera.AllChanged;