Существует ли не повторяющийся элемент управления, позволяющий использовать синтаксис привязки данных? - PullRequest
0 голосов
/ 23 мая 2009

Допустим, у меня есть один узел содержимого XML в моем коде позади. Мне нужно вывести некоторые данные из различных узлов на веб-форму.

Традиционно, я бы создал кучу литералов на странице, а затем делал что-то вроде этого в коде:

MyLiteral.Text = myXmlNode.SelectSingleNode("/some/xpath").InnerText;

Это хорошо, но рассмотрим синтаксис привязки, который мы используем в повторителях:

<ItemTemplate>
    <p>
        <%# XPath("/some/xpath") %>
    </p>
</ItemTemplate>

Итак, мне стало интересно, можете ли вы использовать этот же синтаксис для ситуаций без повторителя. Просто кажется странным, что не было бы того же синтаксиса, доступного для не повторяющейся ситуации.

(Конечно, если вы не возражаете быть нелепым, вы можете привязать ваш XML-узел к повторителю, где он будет иметь только одну итерацию. Я клянусь Я никогда этого не делал .. .)

Не могу не думать, что дизайнеры фреймворка планировали это. Есть ли какой-то не повторяющийся элемент управления, о котором я не знаю, который позволяет связывать источник данных и выполнять рендеринг с использованием выражений привязки данных?

Ответы [ 2 ]

1 голос
/ 23 мая 2009

Как вы уже обнаружили, синтаксис привязки данных работает только с составными элементами управления, такими как повторители, списки, подробные данные и т. Д.

0 голосов
/ 23 мая 2009

Лучшее предложение, которое я могу придумать, это использовать что-то вроде DetailsView или FormView. Это по крайней мере избавит от проблемы наличия «неповторяющихся» данных.

...