Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 绑定到SqlDataAdapter后,ASP.NET GridView宽度将不会保持在100%_C#_Html_Css_Asp.net_Gridview - Fatal编程技术网

C# 绑定到SqlDataAdapter后,ASP.NET GridView宽度将不会保持在100%

C# 绑定到SqlDataAdapter后,ASP.NET GridView宽度将不会保持在100%,c#,html,css,asp.net,gridview,C#,Html,Css,Asp.net,Gridview,我有一个GridView,希望它的宽度保持在100%。它在设计视图中看起来不错,所以我假设使用SqlDataAdapter绑定会重置宽度以适应数据,但我希望它保持在100%。宽度最终是支持绑定数据所需的任何宽度 诚然,我对这一切都是陌生的,所以我相信答案对你们所有人来说都会比对我更明显 <div id="X" class="In-lineControl" style="width:100%"> <asp:GridView ID="XGV" runat="server"

我有一个GridView,希望它的宽度保持在100%。它在设计视图中看起来不错,所以我假设使用SqlDataAdapter绑定会重置宽度以适应数据,但我希望它保持在100%。宽度最终是支持绑定数据所需的任何宽度

诚然,我对这一切都是陌生的,所以我相信答案对你们所有人来说都会比对我更明显

<div id="X" class="In-lineControl" style="width:100%">
     <asp:GridView ID="XGV" runat="server" CssClass="GridView" BorderStyle="Groove">
          <AlternatingRowStyle BackColor="#B4C2E0" />
          <HeaderStyle BackColor="#6C88C4" ForeColor="White" />
     </asp:GridView>
</div>

XData.SelectCommand = cmd;
DataTable XDT = new DataTable();
XData.Fill(XDT);
XGV.DataSource = XDT;
XGV.DataBind();

.GridView{
width:100%;
}

.In-lineControl{
display:block;
margin-top: 5px;
margin-bottom: 10px;
}

XData.SelectCommand=cmd;
DataTable XDT=新DataTable();
扩展数据填充(XDT);
XGV.DataSource=XDT;
XGV.DataBind();
.GridView{
宽度:100%;
}
.在线控制{
显示:块;
边缘顶部:5px;
边缘底部:10px;
}

您应该检查CssClass
GridView
并查看是否有宽度设置

我建议您根据数据源在网格中定义绑定的列和字段,并提供每个列和字段的宽度

<asp:GridView AutoGenerateColumns="false">
    <Columns>
        <asp:BoundField ControlStyle-Width="25%"></asp:BoundField>
    </Columns>
</asp:GridView>


AutoGeneratedColumns默认为true,因此当您绑定到数据时,它似乎会根据其中的数据调整每个列的大小。因此,调整整个网格的大小。

在数据绑定后将CssClass应用于代码中的GridView修复了该问题

后面的代码最终是这样的:

XData.SelectCommand = cmd;
DataTable XDT = new DataTable();
XData.Fill(XDT);
XGV.DataSource = XDT;
XGV.DataBind();
XGV.CssClass = "GridView";

需要css定义和渲染输出。抱歉,应该包括这些。查看edit.by呈现的输出,我指的是提供给clientHave的html,您尝试实际设置网格的宽度属性(而不是CSS样式)。e、 是的,没有效果。问题是数据绑定以某种方式改变了GridView的宽度。在数据绑定完成后,我重新分配了CssClass,它解决了问题。对不起,应该包括这个。我已经编辑了我的帖子。它只包含宽度:100%。GridView根据用户输入包含不同的数据,所以我不确定预先定义列和字段是否有效。