Я пишу доступ так:
Label lb = (Label)DataGridOddsOutright.Items.FindControl("Label_bid");
Возвращает лэйбел но там как ни странно пусто.
Выражение вида:
string str =
DataGridOddsOutright.Items.Cells[2].Controls[0];
тоже не работает, вернее возвращает пустую строку.
В общем как бы я не пытался обратится к датагриду всё одно
пустая строка.
Код датагрида:
Код: Выделить всё
<asp:TemplateColumn HeaderText="BID">
<ItemTemplate>
<asp:Label ID="Label_bid" runat="server">
<%# DataBinder.Eval(Container.DataItem, "BID")%>
</asp:Label>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox ID="TextBox1" runat="server"
Text= '<%# DataBinder.Eval(Container.DataItem, "BID") %>'>
</asp:TextBox>
<asp:RegularExpressionValidator ID="Validator1" runat="server"
ErrorMessage="Bad value"
Display="Dynamic"
ControlToValidate='TextBox1'
EnableClientScript="true" ValidationExpression="^([0-9]{1,})$">
</asp:RegularExpressionValidator>
</EditItemTemplate>
</asp:TemplateColumn>
DataBinder.Eval(Container.DataItem, "BID")%> и поставить
например 100, то код
Код: Выделить всё
string str =
(Label)DataGridOddsOutright.Items[i].FindControl("Label_bid").Text;
то что надо.
Т.е. скорее всего затык с <%#
DataBinder.Eval(Container.DataItem, "BID")%>.
Народ если кто хоть что нить знает расскажите а то я уже
не могу никак решить трабл.