2010-07-22 43 views
6

Tôi có một nhãn mà tôi muốn căn chỉnh để có thể đặt thẳng hàng vào hộp văn bản.
Designer trong Visual Studio 2010 Express đã tạo ra mã này cho tôi.NET Label.TextAlign dường như không hoạt động

this.lblAddData.AutoSize = true; 
this.lblAddData.Location = new System.Drawing.Point(167, 452); 
this.lblAddData.Name = "lblAddData"; 
this.lblAddData.Size = new System.Drawing.Size(25, 14); 
this.lblAddData.TabIndex = 5; 
this.lblAddData.Text = "text"; 
this.lblAddData.TextAlign = System.Drawing.ContentAlignment.MiddleRight; 

[text] [textbox] Trong đoạn code tôi thay đổi văn bản programmaticly

lblAddData.Text = "a very long text"; 

nhưng văn bản được ẩn đằng sau hộp thư mà tôi đã đặt cạnh nhãn trên
bên phải.

[a ver] [hộp văn bản]

Có ai đó gặp phải cùng một sự cố trước đây không?
Tôi biết rằng thông tin bị thiếu nên hãy hỏi tôi xem bạn có cần thêm thông tin không.
Trân trọng
Görgen

Trả lời

14

Vâng, tôi đã tự phát hiện lỗi; AutoSize được đặt thành true, đó là hành vi mặc định

this.lblAddData.AutoSize = true; 

Khi tôi thay đổi điều này thành sai nó hoạt động như tôi đã giả định.

3

Các TextAlign kiểm soát bất động sản như thế nào văn bản được canh trong nhãn:

Gets hoặc đặt liên kết của văn bản trong nhãn.

Nếu bạn thay đổi độ dài của văn bản bạn cần tính toán lại Location của nhãn luôn ở trên cùng bên trái.

tôi đã tìm thấy Code Project article này mà, trong khi lẽ trên đầu cho những gì bạn muốn, khẳng định:

Hơn nữa, nếu bạn đang đi để thay đổi văn bản nhãn (ví dụ, khi bản địa hóa các ứng dụng) hoặc căn chỉnh văn bản, bạn sẽ phải điều chỉnh kích thước/định vị lại các điều khiển. Do đó, tôi đã tạo ra nhãn đơn giản này để xử lý các chi tiết đó.

(đậm của tôi)

Vì vậy, bạn có thể sử dụng cùng một thuật toán để định vị nhãn của bạn.

+2

/facepalm Microsoft thực sự? Có thật không? –

Các vấn đề liên quan