FineUI 官方论坛

标题: 为DataToolTipField添加多字段支持 [打印本页]

作者: 水木山人    时间: 2014-8-10 23:08
标题: 为DataToolTipField添加多字段支持
本帖最后由 水木山人 于 2014-8-10 23:09 编辑
  1. /// <summary>
  2.         /// 取得提示字符串
  3.         /// </summary>
  4.         /// <param name="row"></param>
  5.         /// <returns></returns>
  6.         protected string GetTooltipString(GridRow row)
  7.         {
  8.             string result = null;

  9.             #region 20140808修改前
  10.             //if (!String.IsNullOrEmpty(DataToolTipField))
  11.             //{
  12.             //    object value = row.GetPropertyValue(DataToolTipField);
  13.                                
  14.             //    if (value == null)
  15.             //    {
  16.             //        result = null;
  17.             //    }
  18.             //    else
  19.             //    {
  20.             //        if (!String.IsNullOrEmpty(DataToolTipFormatString))
  21.             //        {
  22.             //            result = String.Format(DataToolTipFormatString, value);
  23.             //        }
  24.             //        else
  25.             //        {
  26.             //            result = value.ToString();
  27.             //        }
  28.             //    }
  29.             //}
  30.             //else if(!String.IsNullOrEmpty(ToolTip))
  31.             //{
  32.             //    result = ToolTip;
  33.             //}
  34.             #endregion
  35.             #region 20140808加
  36.             if (!String.IsNullOrEmpty(DataToolTipField))
  37.             {
  38.                 List<object> vs = DataToolTipField.Split(',').Select(Str => row.GetPropertyValue(Str)).ToList();

  39.                 if (!(vs.Count > 0))
  40.                 {
  41.                     result = null;
  42.                 }
  43.                 else
  44.                 {
  45.                     if (!String.IsNullOrEmpty(DataToolTipFormatString))
  46.                     {
  47.                         result = String.Format(DataToolTipFormatString, vs.ToArray());
  48.                     }
  49.                     else
  50.                     {
  51.                         result = vs.Aggregate<object, string>(null, (current, v1) => current + v1);
  52.                     }
  53.                 }
  54.             }
  55.             else if(!String.IsNullOrEmpty(ToolTip))
  56.             {
  57.                 result = ToolTip;
  58.             }
  59.             #endregion
  60.             return result == null ? "" : String.Format(" data-qtip="{0}" ", result);
  61.         }
复制代码







欢迎光临 FineUI 官方论坛 (https://fineui.com/BBS/) Powered by Discuz! X3.4