Доступ к DataItem повторителя в событии Button_OnClick - PullRequest
1 голос
/ 26 апреля 2010

У меня есть элемент управления повторителем, связанный с коллекцией объектов. Когда я запускаю событие button_onclick, мне нужно иметь доступ к элементу данных, чтобы получить свойства объекта. Вот что у меня есть, и мой вопрос - как мне получить доступ к базовым объектам в повторителе в событии button_onclick

protected void OKButton_Click(object sender, EventArgs e)
{
    try
    {
         string selectedValue = Request.Form["repeaterRadioButton"];
        foreach (RepeaterItem item in Repeater1.Items)
        {
            if (item.ItemType == ListItemType.Item || item.ItemType == ListItemType.AlternatingItem)
            {
                MyObject myObject = (MyObject)item.DataItem;
                if (!string.IsNullOrEmpty(selectedValue) && selectedValue == myObject.MyProperty)
                {
                     //stuff in here
                } ... rest of code

1 Ответ

3 голосов
/ 26 апреля 2010

Элемент данных не сохраняется; он используется только для привязки исходного интерфейса, если вы не привязываете повторитель при каждой загрузке страницы. Затем вам нужно присвоить кнопке значение имени команды и коснитесь элемента repeater.itemCommand, который даст вам доступ к элементу повторителя, где находится свойство dataitem.

РЕДАКТИРОВАТЬ : Если вам нужен доступ к элементам в ретрансляторе, вы можете сделать:

foreach (var item in this.rpt.Items)
{
   if (item.DataItem != null) {
      //Do something
   }
}

Вы пытаетесь получить доступ к одной строке или коллекции строк?

НТН.

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