Динамические данные Asp.net изменяют размер столбца
Я создал с помощью ASP.NET Dynamic Data Entities Web App и ADO.NET Entity Data Model динамическое приложение для изменения таблицы SQL.
Но как я могу изменить ширину столбца gridView? Столбцы большие, но данные будут обрезаны.
Скриншот ширины столбца таблицы
В файле *.edmx значение MaxLength установлено на 300.
<Property Name="foreign_data" Type="nvarchar" Nullable="false" MaxLength="300" />
Вид сетки в Lists.aspx выглядит так:
<asp:GridView ID="GridView1" runat="server" DataSourceID="GridDataSource" EnablePersistedSelection="true"
AllowPaging="True" AllowSorting="True" CssClass="DDGridView"
RowStyle-CssClass="td" HeaderStyle-CssClass="th" CellPadding="6"
PageSize="15">
<Columns>
<asp:TemplateField>
<ItemTemplate>
<asp:DynamicHyperLink runat="server" Action="Edit" Text="Bearbeiten"
/> <asp:LinkButton runat="server" CommandName="Delete" Text="Löschen"
OnClientClick='return confirm("Sind Sie sicher das Sie diesen Datensatz löschen möchten?");'
/> <asp:DynamicHyperLink runat="server" Text="Details" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
<PagerStyle CssClass="DDFooter"/>
<PagerTemplate>
<asp:GridViewPager runat="server" />
</PagerTemplate>
<EmptyDataTemplate>
There are currently no items in this table.
</EmptyDataTemplate>
</asp:GridView>
Так как я могу контролировать длину. Кстати, каждое поле обрезается после 22 символов! Я ищу все решение, но не найдено значений MaxLength. Если я установлю MaxLength Value в gridView, он не будет работать.
2 ответа
Хорошо, я решил это. Я изменил шаблон поля (text.ascx.cs) из
private const int MAX_DISPLAYLENGTH_IN_LIST = 25;
к более высокой стоимости....
Возможно, вы ввели какой-либо атрибут maxlength, поскольку оба значения имеют длину 22 символа.
что-то вроде этого может быть?
<asp:TextBox ID="txtmyValue" MaxLength="10" runat="server" ..../>
Вы получили "BoundField", так что, возможно, вам следует заменить их на "TemplateField", чтобы вы могли контролировать происходящее:
<asp:TemplateField HeaderText="my text value">
<ItemTemplate>
<asp:TextBox ID="txtmyValue" MaxLength="40" runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "YOUR_BOUND_ITEM_NAME") %>'></asp:TextBox>
</ItemTemplate>
</asp:TemplateField>