C# Gridview列未设置为输入的宽度
我有两个GridView,一个显示在另一个下面。两个gridview完全相同,与第二个gridview的唯一区别是我没有显示标题列。我尝试在两个GridView中将宽度设置为完全相同的值,但列不匹配 我已尝试在边界字段上设置宽度:C# Gridview列未设置为输入的宽度,c#,asp.net,gridview,width,boundfield,C#,Asp.net,Gridview,Width,Boundfield,我有两个GridView,一个显示在另一个下面。两个gridview完全相同,与第二个gridview的唯一区别是我没有显示标题列。我尝试在两个GridView中将宽度设置为完全相同的值,但列不匹配 我已尝试在边界字段上设置宽度: <asp:BoundField DataField="Code" HeaderText="A/C" SortExpression="Code" ItemStyle-Width ="120px"></asp:BoundField> 我已尝试设置
<asp:BoundField DataField="Code" HeaderText="A/C" SortExpression="Code" ItemStyle-Width ="120px"></asp:BoundField>
我已尝试设置单元格的宽度:
foreach (TableRow row in gridview.Controls[0].Controls)
{
row.Cells[0].Width = 120;
}
上述措施都没有奏效。第二个gridview宽度(图像中的最后一行)与第一个gridview显示的宽度不同
第一格:
<asp:GridView runat="server"
id="gvJobsPerMonth"
CssClass="tblResults"
OnItemDataBound="gvJobsPerMonth_OnItemDataBound"
AllowSorting="true"
OnSortCommand="gvJobsPerMonth_Sort"
DataKeyField="ID"
AutoGenerateColumns="false" >
<HeaderStyle CssClass="tblResultsHeader" />
<AlternatingRowStyle BackColor="#EEEEEE" />
第二个网格:
<asp:GridView runat="server"
id="gvJobsPerMonthTotals"
CssClass="tblResults"
OnItemDataBound="gvJobsPerMonthTotals_OnItemDataBound"
AllowSorting="true"
OnSortCommand="gvJobsPerMonthTotals_Sort"
DataKeyField="ID"
AutoGenerateColumns="false"
ShowHeader="false" >
<HeaderStyle CssClass="tblResultsHeader" />
<AlternatingRowStyle BackColor="#EEEEEE" />
两个网格使用相同的CSS类。唯一的区别是第二个网格上的ShowHeader=“false”。但即使我将其设置为true,列仍显示为不同的宽度请在第二个GridView中尝试以下代码:
为第二个GridView尝试以下代码:
GridView的宽度是使用ItemStyle width属性设置的
<asp:BoundField DataField="language" HeaderText="language">
<ItemStyle Width="500px" />
</asp:BoundField>
GridView的宽度是通过ItemStyle width属性设置的
<asp:BoundField DataField="language" HeaderText="language">
<ItemStyle Width="500px" />
</asp:BoundField>
标题中似乎有一些填充和/或边距css属性导致了这种情况。如果您拍摄屏幕截图,则标题中的文字a/C
120或更宽。我猜它更宽。如果是这样的话,您可以通过css知道原因。@VDWWD问题已更新,以显示问题的html代码gridviews@RezaAghaei问题更新为显示GridViews的html代码请共享整个代码以重现问题。您已经共享的代码不够。如果您的ShowHeader=“false”,为什么要使用HeaderStyle?(在第二个网格中)标题中似乎有一些填充和/或边距css属性导致了这种情况。如果您拍摄屏幕截图,则标题中的文字a/C
120或更宽。我猜它更宽。如果是这样的话,您可以通过css知道原因。@VDWWD问题已更新,以显示问题的html代码gridviews@RezaAghaei问题更新为显示GridViews的html代码请共享整个代码以重现问题。您已经共享的代码不够。如果您的ShowHeader=“false”,为什么要使用HeaderStyle?(第二格)
</Columns>
<RowStyle Width="120px"/>
</asp:GridView>
<asp:BoundField DataField="language" HeaderText="language">
<ItemStyle Width="500px" />
</asp:BoundField>