2012-03-21 227 views
3

如何將每一行對齊到右側?這是行不通的:ASP.NET標籤文本對齊

Label1.Text = String.Format("{0, 15}", "aaaaaaaa").Replace(" ", " ") 
       + "<br />" 
       + String.Format("{0, 15}", "bbb").Replace(" ", "&nbsp;"); 
+6

哦,親愛的,這看起來像所有黑客的破解。幫你一個忙,學習HTML標準和CSS。我會爲''添加'CssClass'屬性,並使用CSS進行樣式設置。 – 2012-03-21 14:14:17

+0

噢,我的上帝......我不想開始一場革命:D,我知道如何用div和更多的標籤來做到這一點...但這不是我的問題。現在我看到-2票和3(差)答案xD – 2012-03-21 14:17:54

+0

@ e-MEE答案不好?他們都實現了你的目標。 – SimpleVar 2012-03-21 14:19:21

回答

9

當您在.aspx頁面中添加標籤時,使用CSS類或style =「text-align:right;」聲明它。

<asp:Label id="Label1" runat="server" width="100px" style="text-align: right;" /> 

如果您想在運行時更改對齊方式,最好的方法是更改​​標籤的CssClass屬性。

Label1.CssClass = "right_align"; 

在你的CSS:

.right_align { text-align: right; } 
+0

是的...我試過,但沒有'width =「100px」'。現在沒關係,謝謝:) – 2012-03-21 14:32:03

3

我不明白你爲什麼要嘗試從背後的代碼做你的對齊。將標籤放置在具有特定對齊集的頁面上的控件中。如果您在後面的代碼中創建標籤,然後創建一個具有特定對齊方式的控件,該對齊方式可以通過編程方式將標籤插入到其中。

1

單擊標籤,進入屬性,看有沒有一個align屬性,設置爲RIGHT1

1

在C#中,僞碼asp.Net:

var label = new Label(); 
label.TextAlign = ContentAlignment.MiddleRight; // Aligns to right 
label.RightToLeft = RightToLeft.Yes; // Changed direction to rtl (might reverse the meaning of TextAlignment 

或者,如果你想使用字符串填充:

string pad, aaaa = "aaaa"; 
pad = aaaa.PadLeft(6); // " aaaa" 
pad = aaaa.PadLeft(6, '-'); // "--aaaa" 
pad = aaaa.PadRight(10); // "aaaa  " 
pad = aaaa.PadLeft(6).PadRight(8); // " aaaa " 
pad = aaaa.PadLeft(6).PadRight(8, '.'); // " aaaa.." 
+0

[我沒有找到任何TextAlign或RighToLeft屬性](http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.label_properties.aspx) – 2012-03-21 14:25:25

+0

Tym Pollack的語法爲asp .Net在他的回答中。 – SimpleVar 2012-03-21 14:46:58

1

或者你可以這樣來做。

<asp:TableCell HorizontalAlign="Right"> 
    <asp:Label ID="lblGrossPay" runat="server" Text="2, 375"></asp:Label> 
</asp:TableCell> 
0

使從代碼的一個標籤/文本框的背後,你可以使用這樣的:

Label1.Text = "<center>Your Text to print here..</center>";