2010-10-18 17 views
16

Tengo un GridView que se puede editar. Mi problema es que cuando hago clic en Editar, el cuadro de texto es demasiado pequeño (la columna File Name). No es lo suficientemente grande como para mostrar su contenido, y no es tan ancho como el resto de la columna.¿Cómo configuro el ancho de un cuadro de texto cuando edito una fila en un GridView?

¿Cómo puedo hacer que el cuadro de texto sea más ancho?


Aquí está el código ASP:

<asp:GridView ID="FileGridView" runat="server" AllowPaging="True" OnPageIndexChanging="FileGridView_PageIndexChanging" 
    CellPadding="1" CssClass="GridView" GridLines="Horizontal" 
    Width="100%" AutoGenerateColumns="false" 
    AutoGenerateEditButton="true" 
    OnRowCancelingEdit="GridView_RowCancelingEdit" OnRowEditing="GridView_RowEditing" OnRowUpdating="GridView_RowUpdating" 
    > 
    <Columns> 
     <asp:BoundField DataField="Name" HeaderText="File Name" /> 
     <asp:BoundField DataField="Length" HeaderText="Size" ReadOnly="true" /> 
     <asp:BoundField DataField="LastWriteTime" HeaderText="Last Modified" ReadOnly="true" /> 
    </Columns> 
    <RowStyle CssClass="GridViewRow" /> 
    <EditRowStyle ForeColor="Black" CssClass="GridViewEditRow" /> 
    <SelectedRowStyle Font-Bold="True" CssClass="GridViewSelectedRow" /> 
    <PagerStyle BackColor="#2461BF" ForeColor="White" HorizontalAlign="Center" /> 
    <HeaderStyle CssClass="GridViewHeader" ForeColor="White" /> 
    <AlternatingRowStyle CssClass="GridViewAlternatingRow" /> 
</asp:GridView> 

Hay C# código detrás de esto para actualizar los datos, y que funciona muy bien. Espero que la solución esté en ASP, pero si la solución requiere algún código C#, me parece bien.

Respuesta

8

Esto debería funcionar:

<asp:BoundField DataField="Name" HeaderText="File Name" /> 
    <controlstyle Width="200"> 
    </controlstyle> 
</asp:BoundField> 
14

se puede aplicar una clase CSS al mando de esta manera:

<asp:BoundField DataField="Name" HeaderText="File Name" 
    ControlStyle-CssClass="wide" /> 

y después fijar su width en su StyleSheet:

input.wide { width: 100px; } 
1

Puede encubrir el cuadro de texto/cuadro desplegable en una plantilla archivada yendo a Editar opción archivada. Luego vaya a editar la plantilla, defina el ancho/alto de la caja.

4

usted tiene que fijar el ItemStyle-Width de la columna y el ControlStyle-Width para el control dentro de la columna:

<asp:BoundField DataField="Name" HeaderText="File Name" /> 
    <ItemStyle Width="200px" /> 
    <ControlStyle Width="100%" /> 
</asp:BoundField> 
Cuestiones relacionadas