Help with using a custom collection as a property for a TextBox derrived control.

C

Chris Crowe [MVP]

Hi

I am creating a new TextBox control but I am having problems when I am
trying to add my own collection to the control and persisting the values to
the asp.net web page.

This is my code for the collection property

[PersistenceMode(PersistenceMode.InnerProperty)]
public LookupEditControlColumns ListColumns

This is correctly persisting the data as follows:

<cc1:lookupeditcontrol id="LookupEditControl2" runat="server"
PopupWindow="True" LookupURL="search.aspx?ctrl=name&amp;v=">
<ListColumns>
<cc1:LookupEditControlColumn Width="100%"></cc1:LookupEditControlColumn>
</ListColumns>
</cc1:lookupeditcontrol>

But when you open the .aspx page I get the following problem.

The text property of the control contains the following

<ListColumns>
<cc1:LookupEditControlColumn
Width="100%"></cc1:LookupEditControlColumn>
</ListColumns>

and my collection is empty.

How do I handle this situation?

Is there anything else I must do when I want to persist my custom collection
properties?

--
Cheers

Chris

Chris Crowe [IIS MVP]
 
S

Shaun Wilde

I have a similar issue as you and I found this article that seems to have a
good answer that I am going to employ myself - I've been using a similar
trick (i.e. calling OnComponentChanged - have a search for
notifyDesignerOfChange in this group) with a simple string property but the
collection property was causing issues (i.e. sometimes saving and sometimes
not)
 
S

Shaun Wilde

oops forgot to put link in :) http://weblogs.asp.net/ngur/articles/144770.aspx

Shaun Wilde said:
I have a similar issue as you and I found this article that seems to have a
good answer that I am going to employ myself - I've been using a similar
trick (i.e. calling OnComponentChanged - have a search for
notifyDesignerOfChange in this group) with a simple string property but the
collection property was causing issues (i.e. sometimes saving and sometimes
not)

Chris Crowe said:
Hi

I am creating a new TextBox control but I am having problems when I am
trying to add my own collection to the control and persisting the values to
the asp.net web page.

This is my code for the collection property

[PersistenceMode(PersistenceMode.InnerProperty)]
public LookupEditControlColumns ListColumns

This is correctly persisting the data as follows:

<cc1:lookupeditcontrol id="LookupEditControl2" runat="server"
PopupWindow="True" LookupURL="search.aspx?ctrl=name&v=">
<ListColumns>
<cc1:LookupEditControlColumn Width="100%"></cc1:LookupEditControlColumn>
</ListColumns>
</cc1:lookupeditcontrol>

But when you open the .aspx page I get the following problem.

The text property of the control contains the following

<ListColumns>
<cc1:LookupEditControlColumn
Width="100%"></cc1:LookupEditControlColumn>
</ListColumns>

and my collection is empty.

How do I handle this situation?

Is there anything else I must do when I want to persist my custom collection
properties?

--
Cheers

Chris

Chris Crowe [IIS MVP]
 
C

Chris Crowe [MVP]

Thanks Shaun

I will into that solution - at this time I basically wet back to using a
WebControl and then adding the code to make it back to a TextBox which is
working for me.

Cheers

Chris

Chris Crowe [IIS MVP]
http://blog.crowe.co.nz


Shaun Wilde said:
I have a similar issue as you and I found this article that seems to have a
good answer that I am going to employ myself - I've been using a similar
trick (i.e. calling OnComponentChanged - have a search for
notifyDesignerOfChange in this group) with a simple string property but
the
collection property was causing issues (i.e. sometimes saving and
sometimes
not)

Chris Crowe said:
Hi

I am creating a new TextBox control but I am having problems when I am
trying to add my own collection to the control and persisting the values
to
the asp.net web page.

This is my code for the collection property

[PersistenceMode(PersistenceMode.InnerProperty)]
public LookupEditControlColumns ListColumns

This is correctly persisting the data as follows:

<cc1:lookupeditcontrol id="LookupEditControl2" runat="server"
PopupWindow="True" LookupURL="search.aspx?ctrl=name&v=">
<ListColumns>
<cc1:LookupEditControlColumn Width="100%"></cc1:LookupEditControlColumn>
</ListColumns>
</cc1:lookupeditcontrol>

But when you open the .aspx page I get the following problem.

The text property of the control contains the following

<ListColumns>
<cc1:LookupEditControlColumn
Width="100%"></cc1:LookupEditControlColumn>
</ListColumns>

and my collection is empty.

How do I handle this situation?

Is there anything else I must do when I want to persist my custom
collection
properties?

--
Cheers

Chris

Chris Crowe [IIS MVP]
 

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

Members online

No members online now.

Forum statistics

Threads
473,769
Messages
2,569,580
Members
45,054
Latest member
TrimKetoBoost

Latest Threads

Top