Пример #1
0
 public virtual string ToString(DataBindRow RowValues, object Value)
 {
     if (OnRender != null)
     {
         return(OnRender(this, RowValues, Value));
     }
     else if (Value != null)
     {
         //اخطار : همین طوری اینجا رو تغییر ندهید
         if ((this.EnableSort) && (this.SortType == SortTypes.date))
         {
             return((new NetTalk.Common.Dates.NetTalkDate((DateTime)Value)).ToString("$yyyy/$MM/$dd"));
         }
         else if ((this.EnableSort) && (this.SortType == SortTypes.datetime))
         {
             return((new NetTalk.Common.Dates.NetTalkDate((DateTime)Value)).ToString("$dd $MMMM $yyyy $HH:$mm"));
         }
         else if ((this.EnableSort) && (this.SortType == SortTypes.@bool))
         {
             return(string.Format("<div style=\"text-align:center\"><img src=\"/Content/images/{0}\" alt=\"{1}\" /></div>", ((bool)Value) ? "Tick25.png" : "Error25.png", ((bool)Value) ? "بله" : "خیر"));
         }
         else
         {
             return(Convert.ToString(Value));
         }
     }
     else
     {
         return(DefaultValue);
     }
 }
Пример #2
0
            public XmlDocument ToXml()
            {
                if (Data != null)
                {
                    int BeginIndex = (Convert.ToInt32(HttpContext.Current.Request.Form["PageSize"])
                                      * Convert.ToInt32(HttpContext.Current.Request.Form["PageIndex"]));
                    BeginIndex++;

                    XmlDocument xmldoc = new XmlDocument();
                    xmldoc.AppendChild(xmldoc.CreateXmlDeclaration("1.0", "utf-8", null));
                    XmlElement DatasetRoot = xmldoc.CreateElement("dataset");
                    XmlElement XmlRow, XmlCol;

                    XmlAttribute attr;
                    attr = xmldoc.CreateAttribute("name");
                    if (!string.IsNullOrEmpty(this.Title))
                    {
                        attr.Value = HttpUtility.HtmlEncode(this.Title);
                        DatasetRoot.Attributes.Append(attr);
                    }
                    attr       = xmldoc.CreateAttribute("index");
                    attr.Value = HttpContext.Current.Request.Form["PageIndex"];
                    DatasetRoot.Attributes.Append(attr);

                    attr       = xmldoc.CreateAttribute("total");
                    attr.Value = TotalRecords.ToString();
                    DatasetRoot.Attributes.Append(attr);

                    StringBuilder sb    = new StringBuilder();
                    var           items = (IEnumerable)Data;
                    if (Columns.Count == 0)
                    {
                        GenerateColumns();
                    }

                    if (EnableRowNo)
                    {
                        Columns.Insert(0, new GridColumn {
                            BindRow = "RowNo", EnableSort = false, Name = ""
                        });
                    }

                    XmlCDataSection cda;
                    foreach (var row in items)
                    {
                        DataBindRow RowData = new DataBindRow(row);
                        XmlRow = xmldoc.CreateElement("row");
                        foreach (var col in Columns)
                        {
                            XmlCol     = xmldoc.CreateElement("col");
                            attr       = xmldoc.CreateAttribute("name");
                            attr.Value = col.Name;
                            XmlCol.Attributes.Append(attr);

                            attr       = xmldoc.CreateAttribute("field");
                            attr.Value = col.BindRow;
                            XmlCol.Attributes.Append(attr);

                            var value = RowData[col.BindRow];
                            cda = xmldoc.CreateCDataSection(col.ToString(RowData, value));
                            XmlCol.AppendChild(cda);

                            if (col.BindRow == "RowNo")
                            {
                                attr       = xmldoc.CreateAttribute("no");
                                attr.Value = BeginIndex.ToString();
                                XmlRow.Attributes.Append(attr);
                                BeginIndex++;
                            }
                            XmlRow.AppendChild(XmlCol);
                        }
                        DatasetRoot.AppendChild(XmlRow);
                    }

                    xmldoc.AppendChild(DatasetRoot);
                    return(xmldoc);
                }
                else
                {
                    return(new XmlDocument());
                }
            }
Пример #3
0
            public string ToHtml()
            {
                if (Data != null)
                {
                    int BeginIndex = (Convert.ToInt32(HttpContext.Current.Request.Form["PageSize"])
                                      * Convert.ToInt32(HttpContext.Current.Request.Form["PageIndex"]));
                    BeginIndex++;
                    StringBuilder sb    = new StringBuilder();
                    var           items = (IEnumerable)Data;
                    if (Columns.Count == 0)
                    {
                        GenerateColumns();
                    }

                    if (EnableRowNo)
                    {
                        Columns.Insert(0, new GridColumn {
                            BindRow = "RowNo", EnableSort = false, Name = ""
                        });
                    }

                    List <string> RowKey = new List <string>();
                    object        tmp;
                    string        rowcss;
                    bool          addCssRow = (!string.IsNullOrEmpty(OddRowCssClass) || !string.IsNullOrEmpty(EvenRowCssClass));
                    foreach (var row in items)
                    {
                        RowKey = new List <string>();
                        rowcss = "";
                        DataBindRow RowData = new DataBindRow(row);

                        foreach (string key in GridKeys)
                        {
                            tmp = RowData[key];
                            if (tmp == null)
                            {
                                RowKey.Add("{'key':'" + key + "','value':''}");
                            }
                            else
                            {
                                RowKey.Add("{'key':'" + key + "','value':'" + Convert.ToString(tmp) + "'}");
                            }
                        }
                        if (addCssRow)
                        {
                            if ((BeginIndex % 2) == 0)
                            {
                                rowcss = " class=\"" + EvenRowCssClass + "\"";
                            }
                            else
                            {
                                rowcss = " class=\"" + OddRowCssClass + "\"";
                            }
                        }
                        sb.Append("<tr" + rowcss + " data=\"({ ids:[ " + string.Join(",", RowKey.ToArray()) + " ] })\">");
                        foreach (var col in Columns)
                        {
                            if (col.BindRow != "RowNo")
                            {
                                var value = RowData[col.BindRow];
                                sb.AppendFormat("<td{1}>{0}</td>", col.ToString(RowData, value), col.GetAttributes());
                            }
                            else
                            {
                                sb.AppendFormat("<td style=\"width:20px\">" + BeginIndex + "</td>");
                            }
                        }
                        sb.Append("</tr>");
                        BeginIndex++;
                    }
                    return(sb.ToString());
                }
                else
                {
                    return(string.Empty);
                }
            }
Пример #4
0
            public void Databind()
            {
                if (_DataSource != null)
                {
                    if (!AppendData)
                    {
                        Data.Clear();
                    }

                    foreach (var item in _DataSource)
                    {
                        DataBindRow RowData = new DataBindRow(item);
                        TreeNode    Node    = new TreeNode();

                        if (!string.IsNullOrEmpty(BindValue.Id))
                        {
                            object val = RowData[BindValue.Id];
                            if (val != null)
                            {
                                Node.Id = Convert.ToString(val);
                            }
                        }

                        if (!string.IsNullOrEmpty(BindValue.ParentId))
                        {
                            object val = RowData[BindValue.ParentId];
                            if (val != null)
                            {
                                Node.ParentId = Convert.ToString(val);
                            }
                        }

                        if (!string.IsNullOrEmpty(BindValue.Icon))
                        {
                            object val = RowData[BindValue.Icon];
                            if (val != null)
                            {
                                Node.Icon = Convert.ToString(val);
                            }
                        }

                        if (!string.IsNullOrEmpty(BindValue.IconOpen))
                        {
                            object val = RowData[BindValue.IconOpen];
                            if (val != null)
                            {
                                Node.IconOpen = Convert.ToString(val);
                            }
                        }

                        if (!string.IsNullOrEmpty(BindValue.Name))
                        {
                            object val = RowData[BindValue.Name];
                            if (val != null)
                            {
                                Node.Name = Convert.ToString(val);
                            }
                        }

                        if (!string.IsNullOrEmpty(BindValue.Open))
                        {
                            object val = RowData[BindValue.Open];
                            if (val != null)
                            {
                                Node.Open = Convert.ToBoolean(val);
                            }
                        }

                        if (!string.IsNullOrEmpty(BindValue.Target))
                        {
                            object val = RowData[BindValue.Target];
                            if (val != null)
                            {
                                Node.Target = Convert.ToString(val);
                            }
                        }

                        if (!string.IsNullOrEmpty(BindValue.Title))
                        {
                            object val = RowData[BindValue.Title];
                            if (val != null)
                            {
                                Node.Title = Convert.ToString(val);
                            }
                        }

                        if (!string.IsNullOrEmpty(BindValue.Url))
                        {
                            object val = RowData[BindValue.Url];
                            if (val != null)
                            {
                                Node.Url = Convert.ToString(val);
                            }
                        }

                        foreach (string key in NodeKeys)
                        {
                            if (RowData[key] != null)
                            {
                                Node.Keys.Add("{'key':'" + key + "','value':'" + Convert.ToString(RowData[key]) + "'}");
                            }
                            else
                            {
                                Node.Keys.Add("{'key':'" + key + "','value':''}");
                            }
                        }

                        if (OnBindNode != null)
                        {
                            Node = OnBindNode(RowData, Node);
                        }

                        Data.Add(Node);
                    }
                }
            }