我需要在TextBox
GridView
TemplateField
中将文字对齐
这是TemplateField
HTML:
<asp:TemplateField HeaderText="Description">
<ItemTemplate>
<div style="text-align: right;">
<asp:TextBox ID="txtDeductAmount" runat="server" Text="" BorderWidth="1px"></asp:TextBox>
</div>
</ItemTemplate>
<ItemStyle Width="80px" HorizontalAlign="Right" />
</asp:TemplateField>
这仍然与左侧对齐。如何强制文本对齐?
注意: <ItemStyle Width="80px" HorizontalAlign="Right" />
将绑定的字段文本正确对齐。
答案 0 :(得分:4)
或者这个:
<asp:TemplateField HeaderText = "Bank" SortExpression="BankID">
<ItemStyle HorizontalAlign="Right"></ItemStyle>
<ItemTemplate>
<asp:Label ID="BankIDLabel" runat="server" Text='<%# Bind("BankID") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
答案 1 :(得分:2)
此参数不会更改输入文本框,但表格标记会对齐。
要更改输入对齐文本的方式,请将类添加到其中,如。
.AlgRgh
{
text-align:right;
font-family:Verdana, Arial, Helvetica, sans-serif;
}
并在控件上使用CssClass="AlgRgh"
<asp:TextBox ID="txtDeductAmount" runat="server" Text="" BorderWidth="1px" CssClass="AlgRgh" />
答案 2 :(得分:0)
Hannington Mambo的答案完美,速度更快:
<asp:TemplateField HeaderText = "Bank" SortExpression="BankID">
<ItemStyle HorizontalAlign="Right"></ItemStyle>
<ItemTemplate>
<asp:Label ID="BankIDLabel" runat="server" Text='<%# Bind("BankID") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
答案 3 :(得分:0)
在GridView
内设置文本框的值时,可以在.cs
中使用此代码:
((TextBox)GridView1.Rows[Index of the grid].FindControl("txtName")).Style.Add("text-align", "right");