Лучший дизайн для использования RadioButtonList - PullRequest
0 голосов
/ 04 декабря 2008

У меня есть проблема, и я хотел бы узнать правильный способ ее решения.

У меня есть Data Objeckt

class LinkHolder {
    public string Text;
    public string Link;
}

Я хотел бы представить пользователю список RadioButton, который использует значение LinkHolder.Text в качестве описательного текста. Затем на обратной передаче, я хотел бы сделать

Server.Transfer( LinkHolder.Link ) 

по соответствующей ссылке.

Я не уверен, какой самый лучший / самый правильный способ сделать это. Любые советы будут оценены.

Ответы [ 3 ]

1 голос
/ 04 декабря 2008

Вам необходимо установить DataTextField и DataValueField в вашем RadioButtonList. Тогда должны появиться правильные значения.

Вы можете попытаться привести выбранный элемент в LinkHolder.

0 голосов
/ 04 декабря 2008

Класс LinkHolder был просто кратким примером. У меня есть аксессоры в реальном классе. Радиокнопки были дизайнерским выбором, так что я иду с ними.

В моих тестах было напечатано имя класса, а не свойство Text, когда я использовал List<LinkHolder> в качестве источника данных. Я не знаю, как / если вы можете указать свойство, которое RadioButtonList должен печатать.

Насколько я понимаю, если я использую List<LinkHolder> в качестве источника данных, я не верну объект LinkHolder, когда я запрашиваю SelectedItem. Вместо этого я получу ListItem.

Есть ли хороший способ обойти это?

0 голосов
/ 04 декабря 2008

Ваш метод должен работать. Я думаю, что вы должны использовать аксессоры в вашем классе, хотя

class LinkHolder {
    public string Text { get; set;}
    public string Link { get; set;}
}

Свяжите свой RadioButtonList с f.ex. List<LinkHolder>

Почему бы вам использовать список радиобутонетов вместо того, чтобы просто перечислять ваши ссылки как гиперссылки вместо того, чтобы использовать Server.Transfer?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...