2010-03-05 28 views
1

您可以分配值是字符串,數字等類似這樣的其他方式除了databindng的值賦給一個屬性聲明

<asp:Control property="stringvalue" /> 

然而,當屬性類型爲複雜的東西(類類型的屬性)你必須這樣做:

<asp:Control property=<%#Value%> /> 

然後調用數據綁定命令來設置值。

在某些情況下調用databinding命令不可行。在這種情況下,我必須以編程方式設置所有屬性,而我更願意以聲明方式進行。

回答

0

也許我錯過了一些東西。但是如果你在使用複雜類型屬性之後,試試這個。

[TypeConverter(typeof(ExpandableObjectConverter))] 
public class Foo 
{ 
    public string Property1 { get; set; } 
    public string Property2 { get; set; } 
} 

public class FooCtl : WebControl 
{ 
    [DesignerSerializationVisibility(DesignerSerializationVisibility.Content), NotifyParentProperty(true)] 
    public Foo FooProp { get; private set; } 
} 

<cc1:FooCtl ID="FooCtl1" runat="server" FooProp-Property1="Value1" FooProp-Property2="Value2" />