У меня есть asp DetailsView, который я автоматически генерирую поля.asp.net DetailsView - AutoGenerate Columns
Существует один столбец с идентификатором, который сопоставляется с другой таблицей (внешний ключ). Он отображается в текстовом поле. Я хочу, чтобы этот столбец отображался как раскрывающийся список, как указано в моем примере кода ниже. Это отлично работает, но в другом столбце по-прежнему отображается текстовое поле с идентификатором.
Мой вопрос: Можно ли использовать автоматическое создание и по-прежнему скрывать столбцы, которые вам не нужны или вы хотите изменить?
Мне не нравится писать код для каждого отдельного столбца только потому, что одному столбцу нужно использовать TemplateField.
DetailsView
<asp:DetailsView ID="DetailsView1" runat="server"
DefaultMode="Edit" DataSourceID="EntityDataSource1"
AutoGenerateEditButton="True" AutoGenerateInsertButton="True">
<Fields>
<asp:TemplateField HeaderText="Authorization">
<EditItemTemplate>
<asp:DropDownList ID="DropDownList2" Runat="server" DataSourceID="EntityDataSource2" CssClass="DropDown"
DataTextField="Name" DataValueField="AuthenticationId" SelectedValue='<%# bind("AuthenticationId") %>'>
</asp:DropDownList>
</EditItemTemplate>
</asp:TemplateField>
<asp
</Fields>
</asp:DetailsView>
DetailsView DataSource:
<asp:EntityDataSource ID="EntityDataSource1" runat="server"
ContextTypeName="EntityNamespace.MyEntity" EnableFlattening="False"
EntitySetName="Routes" Include="Authentication" Where="it.RouteId = @RouteId">
<WhereParameters>
<asp:RouteParameter Type="Int32" RouteKey="RouteId" Name="RouteId" />
</WhereParameters>
</asp:EntityDataSource>
DROPDOWNLIST DataSource
<asp:EntityDataSource ID="EntityDataSource2" runat="server"
ContextTypeName="EntityNamespace.MyEntity" EnableFlattening="False"
EntitySetName="Authentications">
</asp:EntityDataSource>
Я прочитал статью, и это не означает, что я могу делать то, что я хочу. Поэтому я просто собираюсь предположить, что это невозможно сделать, и что я должен сам связывать все поля. + 1 для усилий – PsychoDUCK