ASP.NET: как установить данные ListView с помощью codebehind вместо использования функции Bind() в атрибуте Text?
Как установить данные ListView с помощью codebehind вместо использования функции Bind() в атрибуте Text?
Прямо сейчас я делаю следующее, но я хотел бы получить его и установить в коде позади. Я использую VB... Спасибо!
<asp:Label ID="Date" runat="server" Text='<%# Bind("Date") %>'></asp:Label>
Редактировать:
Извините, я связываю данные следующим образом с DataTable.
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
If Not IsPostBack Then
ListView.DataSource = MyDataTable
ListView.DataBind()
End If
End Sub
3 ответа
Решение
Не видя ваш код, я могу сказать вам, что ListView имеет свойство DataSource, которое вы должны просто установить в своем коде загрузки (а затем выполнить DataBind()). Я знаю, что делал это раньше с помощью GridView.
На основании предоставленной вами информации это лучшее, что я могу вам дать. Возможно, вы захотите поместить этот фрагмент в событие PreRender для вашего ListView.
Label lblDate = (Label)ListView.FindControl("Date");
if(dataTable.Rows.Count > 0 && dataTables.Columns.Contains("Date"))
{
DataRow row = dataTable.Rows[0];
If(!DBNull.Equals(row["Date"])
{
lblDate.Text = row["Date"].ToString();
}
}