получить доступ к управлению повторителями и изменить их свойства - PullRequest
0 голосов
/ 26 ноября 2010

Я пытаюсь либо отключить / скрыть кнопку lnkDelete, которая находится внутри элемента управления повторителя. Я использовал этот метод, однако я получаю сообщение об ошибке: В экземпляре объекта не задана ссылка на объект. Я не уверен, в чем проблема. Я могу использовать intellesense, чтобы показать свойство Visible элемента управления, это доказательство того, что у меня есть возможности для элемента управления внутри повторителя, любой может помочь. спасибо

    protected void rptCAP_ItemDataBound(object sender, RepeaterItemEventArgs e)
    {
        var lnkDel = e.Item.FindControl("lnkDelete").Visible = false;
      }

Боб Уайт

Ответы [ 2 ]

1 голос
/ 27 ноября 2010

вам нужно добавить оператор if, чтобы проверить, является ли тип элемента элементом или альтернативным элементом, а не элементом верхнего или нижнего колонтитула:

If (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem){
 var lnkDel = e.Item.FindControl("lnkDelete").Visible = false;

   }
0 голосов
/ 27 ноября 2010

Боб, кажется, вы пытаетесь установить свойство Visible, даже если FindControl не возвращает элемент управления.

Вы, вероятно, должны сделать что-то вроде

var lnkDel = e.Item.FindControl("lnkDelete");
if (lnkDel != null)
  lnkDel.Visible = false;
...