2012-06-21 30 views
6

Nếu trang chính có nhãn có nhãn id1 làm cách nào để kiểm soát id đó trong trang nội dung. Các id không được truyền xuống vì vậy tôi không thể kiểm soát nó vốn có. . Ví dụ nếu tôi có một điều khiển với Nhãn nội dung id tôi có thể truy cập vào nó code bằng cách chỉ cần gõ Nhãn nội dung (bất cứ điều gì tôi đang làm)Nhận ID của đối tượng Trang Chính trong Trang Nội dung

+0

Tôi bắt đầu một tiền thưởng bởi vì tôi tò mò nếu có một câu trả lời tốt hơn ra khỏi đó. Câu trả lời của tôi đòi hỏi nhiều bước hơn tôi muốn và nó là một pita trên nhiều trang nội dung. – canon

+0

@antisanity "pita" là gì? – MikeTeeVee

+0

@MikeTeeVee Đau trong ... _butt_. Có vẻ như việc chọn ** MasterPage ** nên đặt ** MasterType ** cho bạn. – canon

Trả lời

10

Dưới đây là hai lựa chọn:

: đảm bảo nội dung aspx của bạn quy định cụ thể MasterType:

<%@ MasterType VirtualPath="~/yourMasterPageName.master" %> 

Việc làm này cho phép trang nội dung của bạn biết những gì mong đợi từ master-trang của bạn và cung cấp cho bạn IntelliSense. Vì vậy, bây giờ bạn có thể tiếp tục và hiển thị thuộc tính Text của nhãn trên mã của trang chính.

public string ContentLabelText 
{ 
    get { return contentLabel.Text; } 
    set { contentLabel.Text = value; } 
} 

Sau đó, bạn có thể truy cập nó trong trang code-behind ala trang nội dung của bạn:

Master.ContentLabelText = "hah!"; 

hay, : Bạn có thể truy cập vào nhãn qua FindControl() như vậy:

var contentLabel = Master.FindControl("contentLabel") as Label; 
+0

là có thực hành tốt hơn hay đây là cách duy nhất? chỉ tò mò – auwall12688

+0

Không phải là tôi biết ... vì vậy, tôi sẽ xem các câu trả lời khác. – canon

+0

Cảm ơn, nó hoạt động hoàn hảo. Tôi mới dùng .NET. Được lập trình một thời gian, nhưng không bao giờ trong .NET hoặc phát triển web. – auwall12688

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