Вам необходимо установить атрибут OnItemDataBound="myFunction"
И затем в своем коде выполните следующее
void myFunction(object sender, RepeaterItemEventArgs e)
{
Label lblA = (Label)e.Item.FindControl("lblA");
}
Кстати, вы можете использовать этот точно такой же подход для вложенных повторителей. IE:
<asp:Repeater ID="outerRepeater" runat="server" OnItemDataBound="outerFunction">
<ItemTemplate>
<asp:Repeater ID="innerRepeater" runat="server" OnItemDataBound="innerFunction">
<ItemTemplate><asp:Label ID="myLabel" runat="server" /></ItemTemplate>
</asp:Repeater>
</ItemTemplate>
</asp:Repeater>
А потом в вашем коде:
void outerFunction(object sender, RepeaterItemEventArgs e)
{
Repeater innerRepeater = (Repeater)e.Item.FindControl("innerRepeater");
innerRepeater.DataSource = ... // Some data source
innerRepeater.DataBind();
}
void innerFunction(object sender, RepeaterItemEventArgs e)
{
Label myLabel = (Label)e.Item.FindControl("myLabel");
}
Слишком часто я вижу людей, которые вручную привязывают элементы на внутреннем ретрансляторе, и они не понимают, насколько они трудны. делать вещи для себя.
Проблема здесь в том, что берется только "лучшее" расположение
директива, в следующем порядке:
location = <path> (longest match wins)
location ^~ <path> (longest match wins)
location ~ <path> (first defined match wins)
location <path> (longest match wins)
Используя этот набор правил, ваша директива / phpmyadmin
location
заменяется регулярным выражением " .php $
" location
директива, поэтому первое полностью игнорируется. Кроме того, ваша директива php fastcgi жестко привязана к вашему каталогу / home / me / dev
, что означает, что phpMyAdmin полностью недоступен. Вы можете использовать перезапись, чтобы получить правильный корень для ваших скриптов phpMyAdmin:
location ~ \.php$ {
set $php_root /home/me/dev;
if ($request_uri ~* /phpmyadmin) {
set $php_root /var/www/nginx-default/phpMyAdmin;
}
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $php_root$fastcgi_script_name;
include /etc/nginx/fastcgi_params;
}
Может быть, он ищет index.html? Попробуйте перейти на
location /phpmyadmin {
root /var/www/nginx-default/phpMyAdmin;
index index.php;
}
и добавить раздел ниже, чтобы избежать проблем, связанных с делом
location /phpMyAdmin {
rewrite ^/* /phpmyadmin last;
}