2015-06-08 2 views
0

Прямо сейчас у меня есть Datagrid, отображающий некоторые детали для трейлеров. Я хочу поставить DropDownList в Datagrid поэтому расположение может быть изменено, но я получаю сообщение об ошибке:Невозможно установить Dropdownlist в Datagrid

Error 32 Literal content ('') is not allowed within a 'System.Web.UI.WebControls.DataGridColumnCollection'. C:\inetpub\wwwroot\test\test\lookups\Trailer.aspx 215

Я видел примеры кода из из DropDownLists в DataGrids раньше, так почему я получаю эту ошибку? Вот код для DataGrid:

 <asp:DataGrid runat="server" CssClass="tblResults" OnItemDataBound="dgList_ItemCreated" AllowSorting="true" OnSortCommand="dgTrailer_Sort" ID="dgTrailers" DataKeyField="ID" AutoGenerateColumns="false"> 
       <HeaderStyle CssClass="tblResultsHeader" /> 
       <AlternatingItemStyle BackColor="#EEEEEE" /> 
       <Columns> 
        <asp:BoundColumn DataField="TrailerMake" HeaderText="Trailer Make" SortExpression="TrailerMake"></asp:BoundColumn> 
        <asp:BoundColumn DataField="TrailerLocation" HeaderText="Trailer Location" SortExpression="TrailerLocation"></asp:BoundColumn> 
        <asp:BoundColumn DataField="Year" HeaderText="Year" SortExpression="Year"></asp:BoundColumn> 

+0

У вас не хватает '' –

+0

жаль, что строка в коде я должен пропустили его при копировании его на – user2026041

ответ

2

Во-первых, это выглядит, как вы упускаете закрывающий тег для столбцов.

Во-вторых, чтобы добавить DropDownList вам придется использовать жерех: TemplateColumn затем связать данные на этот DropDownList:

<asp:DataGrid runat="server" CssClass="tblResults" OnItemDataBound="dgList_ItemCreated" AllowSorting="true" OnSortCommand="dgTrailer_Sort" ID="dgTrailers" DataKeyField="ID" AutoGenerateColumns="false"> 
      <HeaderStyle CssClass="tblResultsHeader" /> 
      <AlternatingItemStyle BackColor="#EEEEEE" /> 
      <Columns> 
       <asp:BoundColumn DataField="TrailerMake" HeaderText="Trailer Make" SortExpression="TrailerMake"></asp:BoundColumn> 
       <asp:BoundColumn DataField="TrailerLocation" HeaderText="Trailer Location" SortExpression="TrailerLocation"></asp:BoundColumn> 
       <asp:BoundColumn DataField="Year" HeaderText="Year" SortExpression="Year"></asp:BoundColumn> 
       <asp:TemplateColumn><ItemTemplate><asp:DropDownList ID="ddlList" runat="server" /></ItemTemplate></asp:TemplateColumn> 
      </Columns> 
     </asp:DataGrid> 
+0

ок спасибо, я не ошибка больше. Поэтому я установил id в ddlTrailerLocation. Я уже использую этот раскрывающийся список в другой части кода. Но выпадающий список все еще не отображается в datagrid. Также мне нужна строка ' 'или может быть удалено? – user2026041

0

Сначала вы должны преобразовать столбец в шаблон, то вы можете добавить выпадающий список в этот шаблон и привязать ваши данные к выпадающему списку. в конце колонка с выпадающим списком будет выглядеть так, как показано ниже.

<Columns> 
    <asp:TemplateField>     
    <ItemTemplate> 
      <asp:DropDownList ID="DropDownList1" runat="server" Height="32px" Width="178px"> 
     </asp:DropDownList> 
    </ItemTemplate> 
</asp:TemplateField>    
</Columns> 
+0

'' вызывает ту же ошибку, что и раньше – user2026041

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