Как установить максимальную ширину столбца BouldField в Gridview? - PullRequest
2 голосов
/ 26 мая 2011

У меня есть недостаток дизайна, и я отчаянно нуждаюсь в помощи, потому что я новичок в .NET.

У меня есть GridView на моей странице, и моя цель - ограничить максимальную ширину для каждого столбца.,Ниже приведен код:

<asp:GridView ID="GridViewMessages" runat="server" AllowPaging="True" AllowSorting="True"
        AutoGenerateColumns="False" CellPadding="4" DataKeyNames="ID" DataSourceID="LinqDataSourceMessages"
        ForeColor="#333333" GridLines="None" Width="600px">
        <AlternatingRowStyle BackColor="White" ForeColor="#284775" />
        <Columns>
            <asp:CommandField ShowDeleteButton="true" ButtonType="Button" ControlStyle-BackColor="Red" />
            <asp:CommandField ShowEditButton="True" ShowSelectButton="True" />
            <asp:BoundField DataField="FromUser" HeaderText="Pengirim" InsertVisible="False"
                ReadOnly="True" SortExpression="FromUser" ItemStyle-Width="10%" ItemStyle-Wrap="false" />
            <asp:BoundField DataField="ToUser" HeaderText="Penerima" InsertVisible="False" ReadOnly="True"
                SortExpression="ToUser" ItemStyle-Width="10%" ItemStyle-Wrap="false" />
            <asp:BoundField DataField="Message1" HeaderText="Pesan" InsertVisible="False" ReadOnly="True"
                SortExpression="Message1" HeaderStyle-Width="50%" HeaderStyle-Wrap="false" ItemStyle-Width="50%" ItemStyle-Wrap="false" />
            <asp:CheckBoxField DataField="IsDone" HeaderText="Selesai?" SortExpression="IsDone"
                ReadOnly="false" ItemStyle-Width="10%" ItemStyle-Wrap="false" />
            <asp:BoundField DataField="DateCreated" HeaderText="Tanggal Buat" InsertVisible="False"
                ReadOnly="True" SortExpression="DateCreated" ItemStyle-Width="20%" ItemStyle-Wrap="false" />
        </Columns>
        <EditRowStyle BackColor="#999999" />
        <FooterStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" />
        <HeaderStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" />
        <PagerStyle BackColor="#284775" ForeColor="White" HorizontalAlign="Center" />
        <RowStyle BackColor="#F7F6F3" ForeColor="#333333" />
        <SelectedRowStyle BackColor="#E2DED6" Font-Bold="True" ForeColor="#333333" />
        <SortedAscendingCellStyle BackColor="#E9E7E2" />
        <SortedAscendingHeaderStyle BackColor="#506C8C" />
        <SortedDescendingCellStyle BackColor="#FFFDF8" />
        <SortedDescendingHeaderStyle BackColor="#6F8DAE" />
    </asp:GridView>

Даже если я использую ItemStyle-Width="300px", он не будет работать, если длина данных больше 300 пикселей.Кажется, что все работает, только если длина каждого файла меньше заданной ширины.

Ребята, вы знаете, как я могу изменить эту проблему проектирования?

Заранее большое спасибо.

1 Ответ

0 голосов
/ 28 июля 2011

Полагаю, это потому, что сетка отображается в виде таблицы HTML. В таблице содержится всегда побеждает. если текст внутри столбца больше, чем вы объявляете, столбец будет расширен.

...