By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
443,665 Members | 1,229 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 443,665 IT Pros & Developers. It's quick & easy.

error: can't find control 'mylabel'

P: n/a
Ben
Hi,

In the code-behind, i can refer to the dropdownlist defined in the aspx file
with this (e.g.)
dropdownlist1.sekectedvalue = ...

but why can i not refer to the label defined in the TemplateField in the
same aspx file like below?
This gives the error: "can't find control 'mylabel' ":
mylabel.text="ok"

<asp:TemplateField>
<ItemTemplate>
<asp:Label ID="mylabel" Runat="server"
Text='<%# Bind("field1") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>

<asp:DropDownList ID="dropdownlist1" runat="server" AutoPostBack="True" >
</asp:DropDownList>

Thanks
Ben
Aug 18 '06 #1
Share this Question
Share on Google+
2 Replies


P: n/a
Because it is just a template. If there are 20 rows, there will be 20
labels. If there are 50 rows, there will be 50 labels.
So which one could 'myLabel' possibly refer to? How would the page know
which one of the unknown number of labels that will be created youw ant?

It can't.

"Ben" <sd**@sdscs.nowrote in message
news:eB**************@TK2MSFTNGP06.phx.gbl...
Hi,

In the code-behind, i can refer to the dropdownlist defined in the aspx
file with this (e.g.)
dropdownlist1.sekectedvalue = ...

but why can i not refer to the label defined in the TemplateField in the
same aspx file like below?
This gives the error: "can't find control 'mylabel' ":
mylabel.text="ok"

<asp:TemplateField>
<ItemTemplate>
<asp:Label ID="mylabel" Runat="server"
Text='<%# Bind("field1") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>

<asp:DropDownList ID="dropdownlist1" runat="server" AutoPostBack="True" >
</asp:DropDownList>

Thanks
Ben

Aug 18 '06 #2

P: n/a
Ben
Thanks for replying.
This is bad news for me, because i defined an InsertItemTemplate containing
a dropdownlist with the possible values into the detailsview (put into
insert mode) .
Result: the Controlparameter can't find controlID="dropdownlist1".
How can i put the selectedvalue of the dropdownlist into that template field
for inserting the new record?

Thanks again
Ben

See part of code:

<asp:SqlDataSource ID="SqlDataSource1"
...
InsertCommand="INSERT INTO [pc] ([name], [place]) VALUES (?, ?, @pl)"
"OldValuesParameterFormatString="original_{0}"
ProviderName="System.Data.OleDb">
<InsertParameters>
<asp:Parameter Name="name" Type="String" />
<asp:ControlParameter ControlID="dropdownlist1" Name="pl"
PropertyName="SelectedValue" Type="String" />
</InsertParameters>
</asp:SqlDataSource>

<asp:DetailsView ID="DetailsView1" runat="server" DataKeyNames="pcnr"
DataSourceID="SqlDataSource1" DefaultMode="Insert">
<Fields>
<asp:BoundField DataField="pcnr" HeaderText="pcnr"
ReadOnly="True"
<asp:BoundField DataField="name" />
<asp:TemplateField >
<InsertItemTemplate>
<asp:DropDownList ID="DropDownList1"
runat="server" AutoPostBack="True" DataSourceID="SqlDataSource2"
DataTextField="place DataValueField="placel">
</asp:DropDownList>
</InsertItemTemplate>
</asp:TemplateField>
<asp:CommandField ShowInsertButton="True" />
</Fields>
</asp:DetailsView>

asp:SqlDataSource ID="SqlDataSource2"
....
"Marina Levit [MVP]" <so*****@nospam.comschreef in bericht
news:%2****************@TK2MSFTNGP06.phx.gbl...
Because it is just a template. If there are 20 rows, there will be 20
labels. If there are 50 rows, there will be 50 labels.
So which one could 'myLabel' possibly refer to? How would the page know
which one of the unknown number of labels that will be created youw ant?

It can't.

"Ben" <sd**@sdscs.nowrote in message
news:eB**************@TK2MSFTNGP06.phx.gbl...
>Hi,

In the code-behind, i can refer to the dropdownlist defined in the aspx
file with this (e.g.)
dropdownlist1.sekectedvalue = ...

but why can i not refer to the label defined in the TemplateField in the
same aspx file like below?
This gives the error: "can't find control 'mylabel' ":
mylabel.text="ok"

<asp:TemplateField>
<ItemTemplate>
<asp:Label ID="mylabel" Runat="server"
Text='<%# Bind("field1") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>

<asp:DropDownList ID="dropdownlist1" runat="server" AutoPostBack="True" >
</asp:DropDownList>

Thanks
Ben


Aug 18 '06 #3

This discussion thread is closed

Replies have been disabled for this discussion.