2010-11-11 52 views
0

使用傳統的ASP.NET 2.0項目。ASP.NET 2.0項目 - 基於類型動態生成控件?

任何人都知道一個免費的動態控件,它會根據它分配的類型來呈現它自己嗎?

例如,如果我將它傳遞給DateTime屬性,它應該呈現爲日期時間選擇器。如果我給它一個字符串...一個簡單的文本框。給它一個列表,它會創建一個下拉列表框或...

必須有東西在那裏...

回答

2

我不能圖像會有一些在那裏,可以做的一切。

你肯定可以換很多控制到一個控制,你可以鍵入一般

public class ControlLoader<T> : System.Web.UI.Control where T : Type 
{ 
    public T Value { get; set; } 

    protected override void Render(System.Web.UI.HtmlTextWriter writer) 
    { 
     if (typeof(T) == typeof(DateTime)) 
     { 
      Controls.Add(/* some datetime picker you found */); 
     } 
     else if (...) 
     { 
      // 
     }    
     base.Render(writer); 
    }   
} 
+0

沒錯,但我無法找到任何東西... – imyoac 2010-11-11 19:54:10

+0

我覺得這是我告訴你建立這個你自己......這真的不會太難。您可以使用現有的ASP.NET控件,並根據傳入的數據類型來動態加載和呈現它們。 – hunter 2010-11-11 19:56:16

+0

我想他是說要使用if(typeof(var)== Date)等自己來構建它。 – dstarh 2010-11-11 20:01:12