Asp.net 当Gridview处于编辑模式和非编辑模式时,如何控制其大小?

Asp.net 当Gridview处于编辑模式和非编辑模式时,如何控制其大小?,asp.net,css,gridview,Asp.net,Css,Gridview,无论Gridview是否处于编辑模式,我都会将Gridview用户控件设置为灰色框架(其div标记),我确实使用了Gridview的宽度和样式,但它不起作用。 我该怎么做 .GridViewStyle { /*It didn't work*/ width:50%; } 处于编辑模式时的Gridview Gridview未处于编辑模式时 在编辑模式下可见的一些控件(主要是文本框输入)似乎有一定的宽度,使得整个网格太宽。您的浏览器将尽最大努力设置表格的宽度(这是gridview呈现的内容),

无论Gridview是否处于编辑模式,我都会将Gridview用户控件设置为灰色框架(其div标记),我确实使用了Gridview的宽度和样式,但它不起作用。 我该怎么做

.GridViewStyle
{
 /*It didn't work*/
 width:50%;
}
处于编辑模式时的Gridview

Gridview未处于编辑模式时
在编辑模式下可见的一些控件(主要是文本框输入)似乎有一定的宽度,使得整个网格太宽。您的浏览器将尽最大努力设置表格的宽度(这是gridview呈现的内容),但如果内容太宽,则必须使其比您希望的宽度更宽


使用Firebug(如果您使用Firefox)、开发人员工具(Internet Explorer)检查文本框元素。。。查看它们是否设置了宽度。

问题当然是处于编辑模式时
文本框的大小

元素添加到gridview中,为编辑行提供一个CSS类

<asp:GridView ID="GridView1" runat="server">
    ...
    <EditRowStyle CssClass="GridViewEditRow" /> <%-- add this --%>
</asp:GridView>

要在编辑模式下管理网格,请在div的xaml代码中添加滚动条。当调用编辑模式时,它将调整到滚动条中。 定义一个div,将网格放入其中。 下面是如何执行此操作的代码

<div style="width:100px; height:100px; overflow:scroll;">
<asp:GridView ID="GridView1" runat="server">
</asp:GridView>
</div>


使用ControlStyle Width属性并将宽度指定给列

以下工作:

<asp:TemplateField HeaderText="Salary" ControlStyle-CssClass="cssWidth"></asp:TemplateField>

<style type="text/css"> 
    .cssWidth {
        width : 150px;
    }     
</style>

.cssWidth{
宽度:150px;
}     
<asp:BoundField HeaderText="Title" ControlStyle-Width="100px" DataField="Title" />
<asp:TemplateField HeaderText="Salary" ControlStyle-CssClass="cssWidth"></asp:TemplateField>

<style type="text/css"> 
    .cssWidth {
        width : 150px;
    }     
</style>