繁体   English   中英

将TextBox垂直对齐到GridView行的中心

[英]Vertically align TextBox to the center of the GridView row

我有一个GridView,在其中有几个字段,下面是代码:

<asp:GridView ID="GW" runat="server" AutoGenerateColumns="False" CellPadding="0" ForeColor="#333333" GridLines="None" Width="100%" OnRowDataBound="GW_RowDataBound">
                            <AlternatingRowStyle BackColor="White" ForeColor="#284775" />
                            <Columns>
                                <asp:BoundField DataField="df1" HeaderText="" HeaderStyle-HorizontalAlign="Center" DataFormatString="{0:d}" HeaderStyle-CssClass="hideGridColumn" ItemStyle-CssClass="hideGridColumn">
                                    <HeaderStyle HorizontalAlign="Center" VerticalAlign="Middle" />
                                    <ItemStyle HorizontalAlign="Center" VerticalAlign="Middle" />
                                </asp:BoundField>
                                <asp:BoundField DataField="df2" HeaderText="" HeaderStyle-HorizontalAlign="Center" DataFormatString="{0:d}" HeaderStyle-CssClass="hideGridColumn" ItemStyle-CssClass="hideGridColumn">
                                    <HeaderStyle HorizontalAlign="Center" VerticalAlign="Middle" />
                                    <ItemStyle HorizontalAlign="Center" VerticalAlign="Middle" />
                                </asp:BoundField>
                                <asp:BoundField DataField="df3" HeaderText="Activity" HeaderStyle-HorizontalAlign="Center" DataFormatString="{0:d}">
                                    <HeaderStyle HorizontalAlign="Center" VerticalAlign="Middle" />
                                    <ItemStyle HorizontalAlign="Center" VerticalAlign="Middle" />
                                </asp:BoundField>
                                <asp:TemplateField HeaderStyle-HorizontalAlign="Center" ItemStyle-HorizontalAlign="Center">
                                    <ItemTemplate>
                                        <asp:RadioButtonList ID="BlOption" RepeatDirection="Horizontal" OnSelectedIndexChanged="Rating_SelectedIndexChanged" AutoPostBack="true" runat="server" Width="50px" HeaderText="" RepeatLayout="Table">
                                            <asp:ListItem Value="0">0</asp:ListItem>
                                            <asp:ListItem Value="1">1</asp:ListItem>
                                            <asp:ListItem Value="2">2</asp:ListItem>
                                            <asp:ListItem Value="3">3</asp:ListItem>
                                            <asp:ListItem Value="4">4</asp:ListItem>
                                            <asp:ListItem Value="5">5</asp:ListItem>
                                        </asp:RadioButtonList>
                                    </ItemTemplate>
                                </asp:TemplateField>
                                <asp:TemplateField HeaderText="Comment" ItemStyle-VerticalAlign="Bottom">
                                    <ItemTemplate>
                                        <asp:TextBox ID="tbComment"  runat="server" AutoPostBack="true" OnTextChanged="Comment_SelectedIndexChanged" ></asp:TextBox>
                                    </ItemTemplate>
                                </asp:TemplateField>

                            </Columns>
                        </asp:GridView>

问题是TextBox tbComment,它被粘贴到行的顶部。 我尝试将ItemStyle-VerticalAlign属性设置为MiddleBottom ,但TextBox停留在行的顶部。

外观如下: 在此处输入图片说明

您能告诉我我做错了吗? 谢谢!

以这种方式尝试:

<asp:TemplateField HeaderText="Comment" >
        <ItemTemplate>
            <asp:TextBox ID="tbComment"  runat="server" AutoPostBack="true" OnTextChanged="Comment_SelectedIndexChanged" ></asp:TextBox>
        </ItemTemplate>
           <ItemStyle  VerticalAlign="Bottom" />
</asp:TemplateField>

并检查页面中是否有一个可以与表格样式进行交互的css文件。 尝试将其删除。

我有一个类似的问题,但是当我将itemstyle设置为如下时

<ItemStyle VerticalAlign="Bottom"  />

我解决了

您可以这样定义垂直对齐的样式

.mystyle
{vertical-align:bottom;}

并在需要时以这种方式使用

<asp:TemplateField HeaderText="Comment" >
        <ItemTemplate>
            <asp:TextBox ID="tbComment"  runat="server" AutoPostBack="true" OnTextChanged="Comment_SelectedIndexChanged" ></asp:TextBox>
        </ItemTemplate>
           <ItemStyle  CssClass="mystyle" />
</asp:TemplateField>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM