Управление повторителем в Asp.Net? - PullRequest
0 голосов
/ 18 января 2012

В веб-приложении, использующем asp.net, я использую управление повторителем, в случае ItmeCommand я пытаюсь найти элемент управления, используя метод управления fid, я пишу код для нахождения элемента управления, он работает нормально, когда элемент управления не в контроллере повторителя, я получаю исключение. Как я могу обработать исключение, если элемент управления не находится в управлении повторителя. Мой код такой:

if (((DropDownList)rpPendingApprovals.Items[i].FindControl "drpBack")).SelectedItem.Value != "0")

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

Ответы [ 3 ]

3 голосов
/ 18 января 2012

почему бы тебе не сделать это?

var dropdown = (DropDownList)rpPendingApprovals.Items[i].FindControl("drpBack"));

    if (dropdown != null && dropdown.SelectedItem.Value != "0")
2 голосов
/ 18 января 2012
DropDownList drpBack = (DropDownList)rpPendingApprovals.Items[i].FindControl("drpBack");

if(drpBack!=null)
{
  if(drpBack.SelectedItem.Value != "0")
    {
       // Do Whatever you want
    }
}
0 голосов
/ 18 января 2012

Когда вы попробовали код Shoaib, вы получаете исключение, потому что, если выпадающее значение не равно NULL, проверяется второе выражение, которое, если SelectedItem имеет значение NULL, создает исключение, поэтому вложите выражения как

var dropdown = (DropDownList)rpPendingApprovals.Items[i].FindControl("drpBack"));

if (dropdown != null && dropdown.SelectedItem != null)
   if(dropdown.SelectedValue !="0")

проблема, надеюсь, исчезла

...