Лучшая техника для нескольких полей Eval в Gridview ItemTemplate? Каков наилучший способ использования нескольких полей EVAL в GridView ItemTemplate? Ищете контроль над форматированием внешнего вида, а также настройку гиперссылок /javascript и т.д. Ответ 1 Еще яснее, IMO: <%# String.Format("{0} - {1}", Eval("Name1"), Eval("Name2")) %> Ответ 2 Я раньше использовал это (плохое, я знаю): <%# Eval("Name1", "{0} - ")%> <%#Eval("Name2")%> Результат = 'Джон-Смит' Но только что обнаружил, что я могу также поместить TWO (или более) Evals в одну и ту же группу данных: <%#Eval("Name1") & " - " & Eval("Name2")%> Результат = 'Джон-Смит' Или <%# "First Name - " & Eval("Name1") & ", Last Name - " & Eval("Name2")%> Результат = 'Имя - Джон, Фамилия - Смит' Ответ 3 Эваль и Свяжите оба сосать. Зачем получить собственность через отражение? Вы можете получить доступ к нему прямо следующим образом: ((MyObject)Container.DataItem).MyProperty Не похоже, что объект неизвестен вам во время выполнения. Что мои два цента, так или иначе. Ответ 4 У меня самый простой способ сделать то же самое... <asp:Label ID="lblName" runat="server" Text='<%#Eval("FirstName").ToString() +", "+ Eval("LastName").ToString() %>'></asp:Label> . <%#Eval("FirstName").ToString() +", "+ Eval("LastName").ToString() %> Здесь оба объекта преобразуются в строку, объединяют их.
Ответ 2 Я раньше использовал это (плохое, я знаю): <%# Eval("Name1", "{0} - ")%> <%#Eval("Name2")%> Результат = 'Джон-Смит' Но только что обнаружил, что я могу также поместить TWO (или более) Evals в одну и ту же группу данных: <%#Eval("Name1") & " - " & Eval("Name2")%> Результат = 'Джон-Смит' Или <%# "First Name - " & Eval("Name1") & ", Last Name - " & Eval("Name2")%> Результат = 'Имя - Джон, Фамилия - Смит'
Ответ 3 Эваль и Свяжите оба сосать. Зачем получить собственность через отражение? Вы можете получить доступ к нему прямо следующим образом: ((MyObject)Container.DataItem).MyProperty Не похоже, что объект неизвестен вам во время выполнения. Что мои два цента, так или иначе.
Ответ 4 У меня самый простой способ сделать то же самое... <asp:Label ID="lblName" runat="server" Text='<%#Eval("FirstName").ToString() +", "+ Eval("LastName").ToString() %>'></asp:Label> . <%#Eval("FirstName").ToString() +", "+ Eval("LastName").ToString() %> Здесь оба объекта преобразуются в строку, объединяют их.