Я отображаю детали некоторых записей в GridView.Иногда в записях есть детали, а иногда нет.
В событии RowDataBound мне нужно установить видимость строки.Если в строке есть данные, покажите их, иначе не показывайте.Это метод, в котором я делаю это:
protected void gvBins_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
string bin = DataBinder.Eval(e.Row.DataItem, "BinNumber").ToString();
if(bin.length == 0) e.Row.Visible = false;
}
}
У меня возникает следующая ошибка, когда нет деталей для отображения
System.NullReferenceException: 'Object reference not set to an
instance of an object. System.Web.UI.DataBinder.Eval(...) returned
null.'
Как это исправить?
Это шаблон элемента для поля:
<ItemTemplate>
<asp:Label ID="lblBin" runat="server" Text='<%# Bind("BinNumber") %>'></asp:Label>
</ItemTemplate>
Для этой конкретной записи нет никаких деталей, поэтому я хочу сделать эти строки невидимыми.
Как лучше всего справиться с этим?