public Searchs(RbControls_TransparentRect _search) { _searchRect = _search; }
/// <summary> /// 查找文本 /// </summary> /// <param name="_search">包含文字</param> public static void search_Text(string _search) { setSearchs.Clear(); var objects = DraggableObjects.FindAll(head => head.Belong_Band == 1).ToList(); var HasData = objects.FindAll(hd => hd.ControlType == 4).Count(); if (HasData > 0) { for (int _num = 0; _num < Total_Page; _num++) //////第几页? { for (int p = 0; p < listRecord; p++) { for (int i = 0; i < objects.Count; i++) { if (objects[i].isContent) { string _txt = ""; int _record = (_num * listRecord) + p; if (_record > dt.Rows.Count - 1) { break; } if ((objects[i].ControlType == 1) || (objects[i].ControlType == 4) || (objects[i].ControlType == 5)) { if (objects[i].ControlType == 1) { _txt = objects[i].Field_Text; } if (objects[i].ControlType == 4) { _txt = dt.Rows[_record][objects[i].Field_Text].ToString(); } if (objects[i].ControlType == 5) { _txt = objects[i].Field_Text.Replace("xx", Total_Page.ToString()); _txt = _txt.Replace("x", (_num + 1).ToString()); } } // 找到文字,颜色覆盖 if (_txt.IndexOf(_search) > -1) { RbControls_TransparentRect _SearchRect = new RbControls_TransparentRect(); _SearchRect.BackColor = Color.Red; //颜色 _SearchRect.Radius = 1; //圆角 角度 _SearchRect.ShapeBorderStyle = RbControls_TransparentRect.ShapeBorderStyles.ShapeBSNone; //边框 _SearchRect.Size = new Size((int)Math.Ceiling((objects[i].Region.Width - 6) * zoomScale), (int)Math.Ceiling((objects[i].Region.Height - 6) * zoomScale)); //大小 int _top = (DraggableBandObjects[0].Region.Bottom - 60) + (objects[i].Region.Top - DraggableBandObjects[1].Region.Top); _SearchRect.Location = new Point((int)((objects[i].Region.Left + 3) * zoomScale), (int)((_top + p * bandHeight) * zoomScale)); //位置 _SearchRect.Opacity = 120; //透明度 RBuild_Preview.panel_Page[_num].Controls.Add(_SearchRect); setSearchs.Add(new Searchs(_SearchRect)); } } } } } } else { for (int i = 0; i < objects.Count; i++) { if (objects[i].isContent) { string _txt = ""; if (objects[i].ControlType == 1) { if (objects[i].ControlType == 1) { _txt = objects[i].Field_Text; } } // 找到文字,颜色覆盖 if (_txt.IndexOf(_search) > -1) { RbControls_TransparentRect _SearchRect = new RbControls_TransparentRect(); _SearchRect.BackColor = Color.Red; //颜色 _SearchRect.Radius = 1; //圆角 角度 _SearchRect.ShapeBorderStyle = RbControls_TransparentRect.ShapeBorderStyles.ShapeBSNone; //边框 _SearchRect.Size = new Size((int)Math.Ceiling((objects[i].Region.Width - 6) * zoomScale), (int)Math.Ceiling((objects[i].Region.Height - 6) * zoomScale)); //大小 int _top = (DraggableBandObjects[0].Region.Bottom - 60) + (objects[i].Region.Top - DraggableBandObjects[1].Region.Top); _SearchRect.Location = new Point((int)((objects[i].Region.Left + 3) * zoomScale), (int)(_top * zoomScale)); //位置 _SearchRect.Opacity = 120; //透明度 RBuild_Preview.panel_Page[0].Controls.Add(_SearchRect); setSearchs.Add(new Searchs(_SearchRect)); } } } } }