2016-03-23 3 views
-1

У меня необычная ситуация, которую я просто не могу решить. У меня есть настройка Telerik RadGrid для использования пользовательского элемента управления .ascx для редактирования записей и добавления новых записей. У формы есть 1 ASP.net DropdownList, который отлично работает, когда я редактирую запись. Однако, когда я пытаюсь добавить запись, приложение аварийно завершает работу с этим сообщением об ошибке:Почему этот Telerik Radgrid работает некоторое время

«DropDownList1» имеет значение SelectedValue, которое недействительно, поскольку оно не существует в списке элементов. Имя параметра: значение Описание: Необработанное исключение произошло во время выполнения текущего веб-запроса. Просмотрите трассировку стека для получения дополнительной информации об ошибке и ее возникновении в коде.
Сведения об исключении: System.ArgumentOutOfRangeException: «DropDownList1» имеет SelectedValue, который является недопустимым, поскольку он не существует в списке элементов. Имя параметра: значение

Вот код, используемый для создания выпадающего списка на странице .ascx.

<asp:DropDownList ID="DropDownList1" runat="server" DataSourceID="EntityDataSource1" 
        DataTextField="StatusDescription" DataValueField="StatusDescription" 
        SelectedValue='<%# DataBinder.Eval(Container, "DataItem.Status") %>'> 
        <asp:ListItem Selected="True" Text="Select" Value=""> 
         </asp:ListItem> 
       </asp:DropDownList> 

Источник данных для раскрывающийся с использованием EntityDataSource и этот код показан ниже:

<asp:EntityDataSource ID="EntityDataSource1" runat="server" ConnectionString="name=TipsFileEntities1" DefaultContainerName="TipsFileEntities1" EntitySetName="Status" 
        Select="it.[StatusDescription], it.[StatusCode]" AutoPage="true" OrderBy="it.[StatusDescription]"> 
       </asp:EntityDataSource> 

Может кто-нибудь объяснить, почему форма визуализации без ошибок для редактирования, а не для записи добавить? И любые предложения о том, как я могу это исправить. Я пробовал очистить и перестроить решение, но это не помогает.

Благодаря Перри

ответ

0

я был в состоянии отследить решение этой проблемы. Мне не хватало настройки в DropDownList. исправленный код показан ниже:

<asp:DropDownList ID="DropDownList1" runat="server" DataSourceID="EntityDataSource1" 
        DataTextField="StatusDescription" DataValueField="StatusDescription" AppendDataBoundItems ="true" 
        SelectedValue='<%# DataBinder.Eval(Container, "DataItem.Status") %>'> 
        <asp:ListItem Selected="True" Text="Select" Value=""></asp:ListItem> 
       </asp:DropDownList> 

я ушел из AppendDataBoundItems = «истина».

Код теперь работает для добавления и редактирования записей

Смежные вопросы