将DataGrid与数据集绑定并设置列宽

时间:2012-01-19 09:26:35

标签: asp.net

我有DataGrid,这个数据网格与数据集绑定

<asp:DataGrid runat="server" ID="myGrid">
    <Columns>
        <asp:BoundColumn DataField="MyField1" HeaderText="MyField1"></asp:BoundColumn>
        <asp:BoundColumn DataField="MyField2" HeaderText="MyField2"></asp:BoundColumn>
    </Columns>                
</asp:DataGrid>

myGrid.DataSource = GetMyDataset();
myGrid.DataBind();

这是有用的,但我看到列数据集的所有字段+定义了2列。 我只想查看专栏。

如何设置列宽%?

有什么想法吗?

谢谢,

3 个答案:

答案 0 :(得分:3)

试试这个

来自ASPX页面

 <asp:DataGrid runat="server" ID="myGrid" AutoGenerateColumns="false">
 </asp:DataGrid>

来自Code Behind

 myGrid.AutoGenerateColumns = false;
 myGrid.DataSource = GetMyDataset();
 myGrid.DataBind();

详细了解AutoGenerateColumns @ MSDN

<强>更新

要设置列的宽度,您可以

<asp:BoundColumn DataField="MyField1" HeaderText="MyField1"
    ItemStyle-Width="30%">
</asp:BoundColumn>

答案 1 :(得分:1)

将AutoGenerateColums =“false”添加到datagrid标记。

您的更新代码将是

<asp:DataGrid runat="server" ID="myGrid" AutoGenerateColumns="false">
    <Columns>
        <asp:BoundColumn DataField="MyField1" HeaderText="MyField1"></asp:BoundColumn>
        <asp:BoundColumn DataField="MyField2" HeaderText="MyField2"></asp:BoundColumn>
    </Columns>                
</asp:DataGrid>

答案 2 :(得分:0)

将AutoGenerateColumns =“false”放入网格中。

<asp:DataGrid runat="server" ID="myGrid" AutoGenerateColumns="false">