Тестирование Контейнера. DataItem со встроенным кодом

Другое решение:

import random

word = 'administrator'
result = [[x, '_'] for x in word]
for i in result:
    res = random.choice([x for x in result if x[1] == '_'])
    index = result.index(res)
    result[index][1] = result[index][0]
    print(''.join([x[1] for x in result]))

Вывод:

____n________
____n___r____
____n_s_r____
____n_s_r__o_
____n_s_r__or
___in_s_r__or
a__in_s_r__or
a__in_str__or
ad_in_str__or
ad_in_stra_or
ad_inistra_or
ad_inistrator
administrator
6
задан Filini 7 April 2009 в 13:17
поделиться

3 ответа

Я сделал бы это. Вы связываете свою функцию "видимости" со свойством видимости управления asp:literal:

<asp:Repeater id="myRepeater" runat="server">
    <ItemTemplate>
        <asp:literal runat='server' id='mycontrol' 
          visible='<%# DataBinder.Eval(Container.DataItem, "MyProperty").Equals("SomeValue") %>'>
          <%# DataBinder.Eval(Container.DataItem, "MyProperty") %>
        </asp:literal>
     </ItemTemplate>
 </asp:Repeater>
5
ответ дан 17 December 2019 в 07:09
поделиться

Вы могли осуществить рефакторинг его к серверному сценарию.

<script runat="server">
protected string ShowIfEqual(RepeaterItem Item, string SomeValue) {
   YourTypeThatIsDataBound _item = (YourTypeThatIsDataBound)Item.DataItem;
   return _item.MyProperty == SomeValue ? _item.MyProperty : string.Empty;
}
</script>

И вызов это встраивает как...

<%#ShowIfEqual(Container, "SomeValue")%>
2
ответ дан 17 December 2019 в 07:09
поделиться

Нет, нет никакого другого способа сделать это.

-4
ответ дан 17 December 2019 в 07:09
поделиться
Другие вопросы по тегам:

Похожие вопросы: