Custom web control string

S

shapper

Hello,

I am creating a custom web control where one of its properties is a
generic list:

<Bindable(True), Category("Format"), DefaultValue(""),
Localizable(True)> Property Features() As Generic.List(Of Feature)
Get
If CStr(ViewState("Features")) Is Nothing Then
Return String.Empty
Else
Return CStr(ViewState("Features"))
End If
End Get
Set(ByVal Value As String)
ViewState("Features") = Value
End Set
End Property ' Features

This is the default way to create a property in a web control, as far
as I know.

I am getting an error saying that string cannot be converted to a
generic list.

How should I create my property?

Thanks,

Miguel
 
N

Nico Ploner

Hi Miguel,

in the DefaultValue attribute you can assign a value to this property when
it is being created. It works in the same way as if you said:
Dim defaultValue as String
myInstance.Features = defaultValue

This code would raise an exception, too.
You should either set the DefaultValue attribute to Nothing or assign some
proper value.

Are you experienced in developing server controls? I'm having trouble with
properties that should be influenced by Themes.
Do you think you could be of help there?

Best Regards,
Nico
 
G

Guest

Most likely this:
Get
If CStr(ViewState("Features")) Is Nothing Then
Return String.Empty

-- is what's causing it. You've defined the property type as List<Feature>
but your get accessor wants to return String.Empty, which obviously
is a different type than List<Feature>, make sense?

HTH,
Peter
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Similar Threads


Top