2008-09-11 20 views

Trả lời

59

Thậm chí rõ ràng hơn, IMO, là:

<%# String.Format("{0} - {1}", Eval("Name1"), Eval("Name2")) %> 
+0

Giả sử Name1 là chuỗi có nội dung "Obama ....." Cách chỉ nhận được 3 ký tự đầu tiên bằng chuỗi định dạng ...? –

5

tôi đã sử dụng trước đó này (xấu, tôi biết):

<%# Eval("Name1", "{0} - ")%> <%#Eval("Name2")%> 

Result = 'John - Smith'

Nhưng chỉ phát hiện ra rằng tôi cũng có thể đặt HAI (hoặc nhiều hơn) evals trong nhóm dữ liệu ràng buộc tương tự:

<%#Eval("Name1") & " - " & Eval("Name2")%> 

Result = 'John - Smith'

Hoặc

<%# "First Name - " & Eval("Name1") & ", Last Name - " & Eval("Name2")%> 

Result = 'First Name - John, Last Name - Smith'

4

Đánh giá và liên kết cả hai lần hút.
Tại sao nhận được tài sản thông qua phản ánh? Bạn có thể truy cập trực tiếp nội dung này như sau:

 
((MyObject)Container.DataItem).MyProperty 

Không giống như đối tượng không rõ bạn lúc chạy. Đó là hai xu của tôi, dù sao đi nữa.

+0

Hoàn toàn giống như phương pháp này, nó sạch sẽ. – BryanGrimes

2

Tôi có một cách đơn giản nhất để làm điều này cùng ...

<asp:Label ID="lblName" runat="server" Text='<%#Eval("FirstName").ToString() +", "+ Eval("LastName").ToString() %>'></asp:Label> 

.

<%#Eval("FirstName").ToString() +", "+ Eval("LastName").ToString() %> 

Ở đây cả hai đối tượng đều được chuyển thành chuỗi nối chúng.

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