1

日期字段为报告中的一个文本框提供值;这是文本框属性页的外观:

         Value       =Fields.eventdate.ToString("D")

eventdate为空时,报告会以红色显示错误框。在这种情况下处理空值的正确方法是什么?

我尝试使用三元运算符代替上述,但这会导致错误:

         Value       =(Fields.evendate != null) ? : Fields.eventdate.ToString("D") : String.Empty

是否可以在与文本框关联的ItemDataBinding事件处理程序中捕获此 null ?似乎无法从那里访问 Fields 集合:

   private void textBox28_ItemDataBinding(object sender, EventArgs e)
    {
          Telerik.Reporting.Processing.TextBox tb = (Telerik.Reporting.Processing.TextBox) sender;
          .
          .
          .
    }
4

1 回答 1

1

知道了:

private void textBox28_ItemDataBinding(object sender, EventArgs e)
{
  Telerik.Reporting.Processing.ReportItemBase item ;
  item = (Telerik.Reporting.Processing.ReportItemBase)sender;
  System.Data.DataRowView drv = (item.DataObject.RawData as System.Data.DataRowView);

  //now test the drv.Row[ colname ] for DBNull.Value

}
于 2011-09-15T19:25:04.443 回答