/ / ASP.NET GridView пов'язує два поля в один стовпець - c #, asp.net, gridview

ASP.NET GridView зв'язати два поля в одну колонку - C #, ASP.NET, GridView

У моїй веб-програмі є ASP.NET GridView, і я хотів би зв'язати два поля в один стовпець і використовувати форматування рядків. Я наводжу приклад нижче, чи можна реалізувати в GridView?

У мене є два поля даних Name і DefaultParam і хотів би відобразити ці поля в одному стовпці GridView.

Подобається це

Name=DefaultParam

Якщо значення DefaultParam порожнє, я хотів би відображати лише Name значення і не включають =

Я використовував Repeater і код нижче, щоб досягти цього, але тепер вирішив перенести відображення даних у GridView

<%#Eval("Name")%>
<%# (!string.IsNullOrEmpty(Eval("DefaultParam").ToString())) ? "= " + Eval("DefaultParam"):"" %>

Відповіді:

3 для відповіді № 1

Ви можете використовувати TemplateField і вкласти туди свою логіку:

<asp:TemplateField HeaderText="Header">
<ItemTemplate>
<%#Eval("Name") + (!string.IsNullOrEmpty(Eval("DefaultParam").ToString())) ? "= " + Eval("DefaultParam"):""%>
</ItemTemplate>
</asp:TemplateField>

Іншим варіантом було б використовувати властивість на вашому об'єкті, щоб зробити цю логіку для вас за кадром, і просто використовувати це як BoundField, але ви не згадували, який об'єкт є вашим прив'язуванням.


0 для відповіді № 2

Ви можете просто написати код на стороні сервера <%# ... %> як ви пишете в коді позаду. просто поставте його в "" (між одинарними лапками).

<asp:Lable id="lblxx" runat="server"
Text="<%# Eval("Name") + (!string.IsNullOrEmpty(Convert.ToString(Eval("DefaultParam")))) ? "= " + Eval("DefaultParam"):"" %>" />

Дотримуйтесь цього підручник посилання, щоб дізнатись, як користувацьке форматування на основі даних за допомогою полів шаблонів.