2013-02-15 71 views
1

我用ASP.NET動態數據實體Web應用程序和ADO.NET實體數據模型創建了一個動態應用程序來修改一個sql表。Asp.net動態數據修改列大小

但我如何修改GridView列寬?這些列很大,但數據將被刪除。

Table column width screenshot

在* .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" 
         />&nbsp;<asp:LinkButton runat="server" CommandName="Delete" Text="Löschen" 
          OnClientClick='return confirm("Sind Sie sicher das Sie diesen Datensatz löschen möchten?");' 
         />&nbsp;<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值。如果我在gridView中設置MaxLength Value,它不會工作。

+0

只是一個隨機的刺,但你的數據庫列長22? – 2013-02-15 13:28:56

+1

沒有列長度是300.如果我想編輯/插入/ showDetails該字段有/顯示全長 – GermanSniper 2013-02-15 13:41:05

+0

奇怪,它必須在其他地方然後...你的gridview是絕對正確的 – 2013-02-15 13:42:59

回答

4

好,我解決了它。我從

private const int MAX_DISPLAYLENGTH_IN_LIST = 25; 

一個較高的值修改字段模板(text.ascx.cs)....

0

也許你輸入了一些「maxlength」屬性導致你的值都是22個字符Long。

這樣的事情也許?

<asp:TextBox ID="txtmyValue" MaxLength="10" runat="server" ..../> 

難道你有「綁定列」的,所以也許你應該用‘模板列’取代他們的,而不是讓您可以控制怎麼回事:

<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>