/// <summary> /// Action when PrintObjectList change /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void OnPrintObjectListChanged(object sender, NotifyCollectionChangedEventArgs e) { _children.Clear(); //_children.Add( CreateObjectDrawingVisual(Barcode_Base_List)); int index = 0; foreach (PrintObject_Base b in PrintObject_List) { b._Index = index; index++; _children.Add(CreateObjectDrawingVisual(b)); } if (_children.Contains(DashRect)) { _children.Remove(DashRect); } if (e.OldItems != null) { foreach (INotifyPropertyChanged item in e.OldItems) { item.PropertyChanged -= ItemList_PropertyChanged; } } if (e.NewItems != null) { foreach (INotifyPropertyChanged item in e.NewItems) { item.PropertyChanged += ItemList_PropertyChanged; } } }
/// <summary> /// Перерисовка сетки /// </summary> public void RedrawGrid(IEnumerable <int> rowsI = null) { if (rowsI == null) { rowsI = Leasings.Select(l => l.RowIndex).Distinct().OrderBy(i => i); } //для случаев, когда меняется размер контрола, а сетка остаётся прежней if (m_gridM != null) { DrawingVisual dv = null; //отрисовка строк сетки foreach (var i in rowsI) { dv = m_gridM.DrawRow(i); if (dv != null) { if (!m_children.Contains(dv)) { m_children.Add(dv); //строки } } } //отрисовка колонок сетки var colCount = DayCount + 1; for (int i = 1; i < colCount; i++) { dv = m_gridM.DrawColumn(i); if (dv != null) { if (!m_children.Contains(dv)) { m_children.Add(dv); } } } } }
private void AddVisual(DrawingVisual visual) { if (!_children.Contains(visual)) { _children.Add(visual); } var tt = (visual.Transform as TranslateTransform); if (tt != null) { tt.X = 0; } visual.Opacity = 1; }
public override bool Contains(UIElement element) { return(visualChildren.Contains(element)); }
public bool Contains(SplitContainer container) { return(collection.Contains(container)); }