2011-08-19 80 views
2

在Asp.Net自定義控件中,我想傳遞一個對象作爲屬性(就像我們通過寬度/顏色一樣)是否有設計時我可以這樣做?作爲屬性的Asp.net自定義控件傳遞對象

實施例:

定製控制是一個< ASP:面板>,我想傳遞

< CUS:CustomPanel ID = 「Panel11」 RUNAT = 「服務器」 CustomObject = 「學生」/ >

學生對象是在後面的代碼實例和我的自定義面板的編碼方式類似於這樣

public class CustomPanel:Panel 
{ 
    [Browsable(true), Category("Data")] 
    public object CustomObject { get; set; } 
} 
+0

任何理由,你爲什麼不能只需將學生對象傳遞給代碼隱藏的CustomPanel? – gislikonrad

+0

我可以通過它,但因爲我正在設計作爲組件尋找設計時間的支持。目前我無法在設計時指定它 – user841683

+0

我可以在aspx中做什麼Eval – user841683

回答

0

您可能沒有將您的自定義屬性設置爲字符串類型。 那麼你可以趕上初始化屬性,並創建一個switch語句中的apropriate對象:

public class CustomPanel:Panel 
    { 
     [Browsable(true), Category("Data")] 
     public string CustomObject { get; set; } 
    } 

然後頁面加載內或INT你可以建立正確的對象

switch (CustomObject) 
     { 
      case "Student": 
       CustomObject student = new CustomObject(); 
       break; 
      case "Staff": 
       CustomObject staff = new CustomObject(); 
       break; 
      default: 
       CustomObject student = new CustomObject(); 
       break; 
     } 
相關問題