DiagramPanel
DiagramPanel — это центральный класс диаграммы, содержащий все уровни частей, отвечающий за перевод (прокрутку), масштабирование (масштабирование) и выравнивание, отслеживание границ диаграммы и использование различных методов проверки попадания для поиска на диаграмме определенных элементов.
Наследует: Panel
Реализует: IScrollInfo
Конструкторы
Свойства
public NodeLayer AdornmentLayer { get; }
value = diagramPanel.AdornmentLayer
Получает стандартный слой, используемый для удержания украшений, который обычно находится перед всеми другими слоями.
public int AutoScrollDelay { get; set; }
value = diagramPanel.AutoScrollDelay
diagramPanel.AutoScrollDelay = value
Устанавливает или устанавливает, сколько времени ждать, прежде чем автопрокрутка.
public Thickness AutoScrollRegion { get; set; }
value = diagramPanel.AutoScrollRegion
diagramPanel.AutoScrollRegion = value
Получает или устанавливает запас в панели, где перетаскивание мыши автоматически вызовет прокрутку.
public int AutoScrollTime { get; set; }
value = diagramPanel.AutoScrollTime
diagramPanel.AutoScrollTime = value
Получает или устанавливает, как быстро изменить положение, когда мышь находится в AutoScrollRegion.
public bool CanHorizontallyScroll { get; set; }
value = diagramPanel.CanHorizontallyScroll
diagramPanel.CanHorizontallyScroll = value
Получает или устанавливает, может ли пользователь прокручивать горизонтально. (Реализует IScrollInfo)
public bool CanVerticallyScroll { get; set; }
value = diagramPanel.CanVerticallyScroll
diagramPanel.CanVerticallyScroll = value
Получает или устанавливает, может ли пользователь прокручивать вертикально. (Реализует IScrollInfo)
public Diagram Diagram { get; internal set; }
value = diagramPanel.Diagram
diagramPanel.Diagram = value
Получил диаграмму, в которой находится эта панель.
public Rect DiagramBounds { get; set; }
value = diagramPanel.DiagramBounds
diagramPanel.DiagramBounds = value
Получает или устанавливает границы координаты модели диаграммы.
public double ExtentHeight { get; }
value = diagramPanel.ExtentHeight
Получите вертикальный размер прокручиваемой части этой диаграммы, в управляющих (устройство независимых пикселей) блоках. (Реализует IScrollInfo)
public double ExtentWidth { get; }
value = diagramPanel.ExtentWidth
Получите горизонтальный размер прокручиваемой части этой диаграммы, в управляющих (устройство независимых пикселей) блоках. (Реализует IScrollInfo)
public Rect FixedBounds { get; set; }
value = diagramPanel.FixedBounds
diagramPanel.FixedBounds = value
Получает или устанавливает фиксированный ограничивающий прямоугольник, который должен быть возвращен по адресу ComputeDiagramBounds.
public HorizontalAlignment HorizontalContentAlignment { get; set; }
value = diagramPanel.HorizontalContentAlignment
diagramPanel.HorizontalContentAlignment = value
Получает или устанавливает, как части расположены в панели, когда ширина DiagramBounds меньше, чем ViewportWidth.
public double HorizontalOffset { get; }
value = diagramPanel.HorizontalOffset
Получает горизонтальное смещение частей диаграммы. (Реализует IScrollInfo)
public double MaximumScale { get; set; }
value = diagramPanel.MaximumScale
diagramPanel.MaximumScale = value
Получает или устанавливает наибольшее значение, которое может принять Шкала.
public double MinimumScale { get; set; }
value = diagramPanel.MinimumScale
diagramPanel.MinimumScale = value
Получает или устанавливает наименьшее значение, большее нуля, которое может принять Шкала.
public Thickness Padding { get; set; }
value = diagramPanel.Padding
diagramPanel.Padding = value
Получает или устанавливает количество дополнительного «пустого» пространства, зарезервированного вокруг DiagramBounds.
public Point Position { get; set; }
value = diagramPanel.Position
diagramPanel.Position = value
Получает или устанавливает точку в координатах модели, показанных в верхнем левом углу этой панели.
public double Scale { get; set; }
value = diagramPanel.Scale
diagramPanel.Scale = value
Получает или устанавливает масштабный фактор, при котором все отображается.
public double ScrollHorizontalLineChange { get; set; }
value = diagramPanel.ScrollHorizontalLineChange
diagramPanel.ScrollHorizontalLineChange = value
Получает или устанавливает размер «линии» при прокрутке горизонтально.
public ScrollViewer ScrollOwner { get; set; }
value = diagramPanel.ScrollOwner
diagramPanel.ScrollOwner = value
Получает или устанавливает ScrollViewer, который позволяет пользователю прокручивать эту панель. (Реализует IScrollInfo)
public double ScrollVerticalLineChange { get; set; }
value = diagramPanel.ScrollVerticalLineChange
diagramPanel.ScrollVerticalLineChange = value
Получает или устанавливает размер «линии» при прокрутке вертикально.
public StretchPolicy Stretch { get; set; }
value = diagramPanel.Stretch
diagramPanel.Stretch = value
Получает или устанавливает, как устанавливается свойство масштаба панели, в зависимости от размера DiagramBounds.
public VerticalAlignment VerticalContentAlignment { get; set; }
value = diagramPanel.VerticalContentAlignment
diagramPanel.VerticalContentAlignment = value
Получает или устанавливает, как части расположены в панели, когда ширина DiagramBounds меньше, чем ViewportWidth.
public double VerticalOffset { get; }
value = diagramPanel.VerticalOffset
Получает вертикальное смещение частей диаграммы. (Реализует IScrollInfo)
public Rect ViewportBounds { get; }
value = diagramPanel.ViewportBounds
Получает видимую часть этой панели в координатах модели.
public double ViewportHeight { get; }
value = diagramPanel.ViewportHeight
Получите вертикальный размер видимой части этой панели, в блоке управления (независимый пиксель устройства). (Реализует IScrollInfo)
public double ViewportWidth { get; }
value = diagramPanel.ViewportWidth
Получите горизонтальный размер видимой части этой панели, в блоке управления (независимый пиксель устройства). (Реализует IScrollInfo)
public Point ZoomPoint { get; set; }
value = diagramPanel.ZoomPoint
diagramPanel.ZoomPoint = value
Получает или устанавливает кажущуюся точку фокусировки, используемую при увеличении или удалении.
public int ZoomTime { get; set; }
value = diagramPanel.ZoomTime
diagramPanel.ZoomTime = value
Получает или устанавливает, как быстро изменить свойства Масштаб и/или Позиции при адаптации к изменениям DiagramBounds или изменениям размера панели, вызывающим перенастройку контента, или в вызовах на Rect) или Action.
Методы
protected override Size ArrangeOverride(Size finalSize)
result = diagramPanel.ArrangeOverride(finalSize)
Установите каждый из слоев на этой панели.
- finalSize
public void CenterPart(Part part)
diagramPanel.CenterPart(part)
Центрировать границы части в пределах этой точки зрения.
- part
public void CenterPart(Part part, Action afterwards)
diagramPanel.CenterPart(part, afterwards)
Центрировать границы части в пределах этой точки зрения.
- part
- afterwards
- Действие, которое должно быть выполнено после завершения анимации; может быть недействительным
public void CenterRect(Rect bounds, Action afterwards)
diagramPanel.CenterRect(bounds, afterwards)
Центр конкретной области диаграммы в этом видении.
- bounds
- a Прямой в координатах модели
- afterwards
- Действие, которое должно быть выполнено после завершения анимации; может быть недействительным
protected virtual Point ComputeAutoScrollPosition(Point viewPnt)
result = diagramPanel.ComputeAutoScrollPosition(viewPnt)
Этот метод называется для определения следующей позиции в документе для этого представления, учитывая точку, в которой пользователь перетаскивает мышь.
- viewPnt
- Точка мыши, управляющая координатами.
public virtual Rect ComputeBounds(IEnumerable<Part> parts)
result = diagramPanel.ComputeBounds(parts)
Вычислите ограничивающий прямоугольник, который окружает определенную коллекцию частей.
- parts
Возвращает: объединение границ всех частей в , или Rect.Empty, если нет частей
protected virtual Rect ComputeDiagramBounds()
result = diagramPanel.ComputeDiagramBounds()
Это называется UpdateDiagramBounds, чтобы определить новое значение для DiagramBounds.
Возвращает: a Прямой в координатах модели
protected virtual GridPattern CreateBackgroundGridPattern()
result = diagramPanel.CreateBackgroundGridPattern()
Создайте GridPattern для всей диаграммы, используя шаблон данных GridPatternTemplate.
Возвращает: несвязанный узел, удерживающий GridPattern
public void DoAutoScroll(Point modelPnt)
diagramPanel.DoAutoScroll(modelPnt)
Начните или продолжайте автоматически прокручивать вид во время перетаскивания мыши.
- modelPnt
- Текущая точка мыши в координатах модели
protected virtual Rect DoMakeVisible(UIElement elt, Rect rectangle)
result = diagramPanel.DoMakeVisible(elt, rectangle)
Этот переопределяемый метод изменяет положение так, что данный элемент становится видимым в поле зрения.
- elt
- UIElement, который находится в визуальном дереве этой панели
- rectangle
- Область элемента, чтобы привести в виду; если это пусто, это по умолчанию для родительской части элемента.
public T FindElementAt<T>(Point p, Func<Visual, T> navig, Predicate<T> pred, SearchLayers layers)
result = diagramPanel.FindElementAt(p, navig, pred, layers)
Ищите все части, которые находятся в данной точке, и возвращайте первый элемент, который соответствует.
- p
- Точка в координатах модели
- navig
- Это функция, которая получает элемент в данной точке и возвращает элемент типа, который должен быть рассмотрен предикатом. Как правило, функция находит предок Part или Node.
- pred
- Это предикат, которому дается элемент типа; Если предикат возвращается истинным, этот метод возвращает этот элемент; если он возвращается ложным, поиск элементов продолжается в данной точке. Если этот аргумент предиката недействителен, фильтрация элементов не выполняется — первый найденный элемент возвращается.
- layers
- Виды слоев для поиска. Например, если вы ищете Узел, используя узлы значений, это ускорит поиск, игнорируя слои, содержащие Ссылки.
Возвращает: элемент типа , или нулевой, если не найден
public IEnumerable<T> FindElementsAt<T>(Point p, Func<Visual, T> navig, Predicate<T> pred, SearchLayers layers)
result = diagramPanel.FindElementsAt(p, navig, pred, layers)
Ищите все части, которые находятся в данной точке, и возвращайте набор элементов, которые соответствуют.
- p
- Точка в координатах модели
- navig
- Это функция, которая получает элемент в данной точке и возвращает элемент типа, который должен быть рассмотрен предикатом. Как правило, функция находит предок Part или Node.
- pred
- Это предикат, которому дается элемент типа; если предикат возвращается истинным, этот метод включает этот элемент в свои результаты. Если этот аргумент предиката недействителен, фильтрация элементов не производится — все они включены.
- layers
- Виды слоев для поиска. Например, если вы ищете Узлы, используя Узлы значений, это ускорит поиск, игнорируя слои, содержащие Ссылки.
Возвращает: Возможно, пустая коллекция элементов типа
public IEnumerable<T> FindElementsIn<T>(Rect rect, Func<Visual, T> navig, Predicate<T> pred, SearchLayers layers)
result = diagramPanel.FindElementsIn(rect, navig, pred, layers)
Найдите элементы, которые находятся внутри прямоугольника.
- rect
- a Прямой в координатах модели
- navig
- Это функция, которая получает элемент в данной точке и возвращает элемент типа, который должен быть рассмотрен предикатом. Как правило, функция находит предок Part или Node.
- pred
- Это предикат, которому дается элемент типа; если предикат возвращается истинным, этот метод включает этот элемент в свои результаты.
- layers
- Виды слоев для поиска. Например, если вы ищете Узлы, используя Узлы значений, это ускорит поиск, игнорируя слои, содержащие Ссылки.
Возвращает: Возможно, пустая коллекция элементов типа
public IEnumerable<T> FindElementsNear<T>(Point p, double dist, Func<Visual, T> navig, Predicate<T> pred, SearchLayers layers)
result = diagramPanel.FindElementsNear(p, dist, navig, pred, layers)
Найдите элементы, которые находятся на расстоянии точки.
- p
- Точка в координатах модели
- dist
- Расстояние в координатах модели
- navig
- Это функция, которая получает элемент в данной точке и возвращает элемент типа, который должен быть рассмотрен предикатом. Как правило, функция находит предок Part или Node.
- pred
- Это предикат, которому дается элемент типа; если предикат возвращается истинным, этот метод включает этот элемент в свои результаты.
- layers
- Виды слоев для поиска. Например, если вы ищете Узлы, используя Узлы значений, это ускорит поиск, игнорируя слои, содержащие Ссылки.
Возвращает: элемент типа , или нулевой, если не найден
internal IEnumerable<T> FindElementsWithin<T>(Geometry geo, Func<Visual, T> navig, Predicate<T> pred, SearchLayers layers)
result = diagramPanel.FindElementsWithin(geo, navig, pred, layers)
Ищите все части, которые находятся внутри данной геометрии, которые соответствуют данному предикату, и возвращайте набор элементов, которые соответствуют.
- geo
- Геометрия в координатах модели
- navig
- Это функция, которая получает элемент в данной точке и возвращает элемент типа, который должен быть рассмотрен предикатом. Как правило, функция находит предок Part или Node.
- pred
- Это предикат, которому дается элемент типа; если предикат возвращается истинным, этот метод включает этот элемент в свои результаты.
- layers
- Виды слоев для поиска. Например, если вы ищете Узлы, используя Узлы значений, это ускорит поиск, игнорируя слои, содержащие Ссылки.
Возвращает: Возможно, пустая коллекция элементов типа
public T FindLayer<T>(string name)
result = diagramPanel.FindLayer(name)
Найдите слой данного типа с точно таким же идентификатором, как и данный.
- name
public T FindPartAt<T>(Point p, Predicate<T> pred, SearchLayers layers)
result = diagramPanel.FindPartAt(p, pred, layers)
Верните самую переднюю часть, которая находится в данной точке.
- p
- Точка в координатах модели
- pred
- Это предикат, которому дается часть типа; если предикат возвращается истинным, этот метод возвращает эту часть. Если этот аргумент недействителен, он возвращает первую часть, которую находит в точке.
- layers
- Виды слоев для поиска. Например, если вы ищете Узлы, используя Узлы значений, это ускорит поиск, игнорируя слои, содержащие Ссылки.
Возвращает: ноль, если такая часть не найдена
public IEnumerable<T> FindPartsAt<T>(Point p, SearchLayers layers)
result = diagramPanel.FindPartsAt(p, layers)
Верните все части, которые находятся в данной точке.
- p
- Точка в координатах модели
- layers
- Виды слоев для поиска. Например, если вы ищете Узлы, используя Узлы значений, это ускорит поиск, игнорируя слои, содержащие Ссылки.
Возвращает: Все части данного типа находятся в точке и находятся в типах слоев, указанных . Это возвращает пустой список, если не найдены квалификационные части.
public IEnumerable<T> FindPartsIn<T>(Rect rect, SearchFlags srch, SearchInclusion overlap, SearchLayers layers)
result = diagramPanel.FindPartsIn(rect, srch, overlap, layers)
Найдите части, которые находятся внутри прямоугольника.
- rect
- a Прямой в координатах модели
- srch
- Типичным значением может быть SelectableParts.
- overlap
- Необходимые геометрические отношения с частью; типичное значение находится внутри.
- layers
- Виды слоев для поиска. Например, если вы ищете Узлы, используя Узлы значений, это ускорит поиск, игнорируя слои, содержащие Ссылки.
public IEnumerable<T> FindPartsNear<T>(Point p, double dist, SearchFlags srch, SearchInclusion overlap, SearchLayers layers)
result = diagramPanel.FindPartsNear(p, dist, srch, overlap, layers)
Найдите части, которые находятся вблизи точки.
- p
- Точка в координатах модели
- dist
- Расстояние в координатах модели
- srch
- Типичным значением может быть SelectableParts.
- overlap
- Необходимые геометрические отношения с частью; типичное значение находится внутри.
- layers
- Виды слоев для поиска. Например, если вы ищете Узлы, используя Узлы значений, это ускорит поиск, игнорируя слои, содержащие Ссылки.
internal IEnumerable<T> FindPartsWithin<T>(Geometry geo, SearchFlags srch, SearchInclusion overlap, SearchLayers layers)
result = diagramPanel.FindPartsWithin(geo, srch, overlap, layers)
Поиск всех частей, которые находятся внутри заданной геометрии, которые соответствуют определенным критериям, и возврат коллекции тех, которые соответствуют.
- geo
- Геометрия в координатах модели
- srch
- Типичным значением может быть SelectableParts.
- overlap
- Необходимые геометрические отношения с геометрией; типичное значение находится внутри.
- layers
- Виды слоев для поиска. Например, если вы ищете Узлы, используя Узлы значений, это ускорит поиск, игнорируя слои, содержащие Ссылки.
Возвращает: Возможно, пустая коллекция элементов типа
public T GetLayer<T>(string name)
result = diagramPanel.GetLayer(name)
Найдите слой данного типа с точно таким же идентификатором, что и данный, или верните слой по умолчанию данного типа.
- name
protected virtual void InitializeLayers()
diagramPanel.InitializeLayers()
Если в коллекции этой панели для детей нет слоев, создайте стандартный набор слоев.
public static bool IsDoubleClick(MouseButtonEventArgs e)
result = DiagramPanel.IsDoubleClick(e)
Этот предикат верен, если событие кнопки мыши представляет собой двойной щелчок.
- e
internal bool IsUnoccupied(Rect r, Predicate<Part> skip)
result = diagramPanel.IsUnoccupied(r, skip)
Возвращается истинным, если есть какие-либо узлы внутри или пересекающие заданную прямоугольную область.
- r
- a Прямой в координатах модели
- skip
- Предикат, который должен вернуться истинным для узлов, которые должны быть проигнорированы при проверке на наличие столкновений, обычно узел в документе, который вы рассматриваете для перемещения; может быть нулевым для рассмотрения всех невременных узлов.
public void LineDown()
diagramPanel.LineDown()
Увеличивает VerticalOffset на ScrollVerticalLineChange (Реализует IScrollInfo).
public void LineLeft()
diagramPanel.LineLeft()
Уменьшает HorizontalOffset на ScrollHorizontalLineChange (Реализует IScrollInfo).
public void LineRight()
diagramPanel.LineRight()
Увеличивает HorizontalOffset на ScrollHorizontalLineChange (Реализует IScrollInfo).
public void LineUp()
diagramPanel.LineUp()
Уменьшает VerticalOffset на ScrollVerticalLineChange (Реализует IScrollInfo).
public BitmapSource MakeBitmap(Size bmpsize, double dpi, Point viewpos, double scale)
result = diagramPanel.MakeBitmap(bmpsize, dpi, viewpos, scale)
Верните растровую карту, показывающую части в определенной области, нарисованные в заданном масштабе.
- bmpsize
- размер полученной растровой карты
- dpi
- разрешение растровой карты
- viewpos
- Точка в координатах модели
- scale
- Значение 1,0 нормально; значение должно быть положительным числом. Меньшие значения производят более мелкие детали.
Возвращает: a BitmapSource
public BitmapSource MakeBitmap()
result = diagramPanel.MakeBitmap()
Генерирует растровую карту, отображающую части, которые в настоящее время видны на диаграмме.
Возвращает: a BitmapSource
public BitmapSource MakeBitmap(Size bmpsize, double dpi, Point viewpos, double scale, Action<BitmapSource> act)
result = diagramPanel.MakeBitmap(bmpsize, dpi, viewpos, scale, act)
Верните растровую карту, показывающую части в определенной области, нарисованные в заданном масштабе.
- bmpsize
- размер полученной растровой карты, округленной до ближайшего целого числа
- dpi
- разрешение растровой карты
- viewpos
- a Точка в координатах модели для левого верхнего угла области, подлежащей отображению
- scale
- Значение 1,0 нормально; значение должно быть положительным числом. Меньшие значения производят более мелкие детали.
- act
- a Действие, предполагающее, что BitmapSource будет выполнено позднее; это может быть недействительным
Возвращает: a BitmapSource
public Rect MakeVisible(Visual visual, Rect rectangle)
result = diagramPanel.MakeVisible(visual, rectangle)
Прокрутите диаграмму так, чтобы данный элемент () находился в поле зрения. (Реализация IScrollInfo.)
- visual
- rectangle
- Регион элемента, который следует учитывать. Это значение обычно Rect.Empty, что означает столько визуального элемента, сколько будет вписываться в видоискатель.
Возвращает: Результат вызова Rect
protected override Size MeasureOverride(Size availableSize)
result = diagramPanel.MeasureOverride(availableSize)
Измерьте каждый из слоев на этой панели.
- availableSize
public void MouseWheelDown()
diagramPanel.MouseWheelDown()
Увеличивает VerticalOffset на ScrollVerticalLineChange количество строк для прокрутки для вращения колеса мыши. (Реализация IScrollInfo.)
public void MouseWheelLeft()
diagramPanel.MouseWheelLeft()
Уменьшает HorizontalOffset на ScrollHorizontalLineChange количество строк для прокрутки для вращения колеса мыши. (Реализация IScrollInfo.)
public void MouseWheelRight()
diagramPanel.MouseWheelRight()
Увеличивает HorizontalOffset на ScrollHorizontalLineChange количество строк для прокрутки для вращения колеса мыши. (Реализация IScrollInfo.)
public void MouseWheelUp()
diagramPanel.MouseWheelUp()
Уменьшает VerticalOffset на ScrollVerticalLineChange количество строк для прокрутки для вращения колеса мыши. (Реализация IScrollInfo.)
protected virtual void OnBoundsAlignmentChanged()
diagramPanel.OnBoundsAlignmentChanged()
Этот надежный метод называется, когда свойства DiagramBounds или HorizontalContentAlignment или VerticalContentAlignment или Stretch изменяются.
protected virtual void OnDiagramBoundsChanged(RoutedPropertyChangedEventArgs<Rect> e)
diagramPanel.OnDiagramBoundsChanged(e)
Поднять DiagramBoundsChanged событие.
- e
protected override void OnDragEnter(DragEventArgs e)
diagramPanel.OnDragEnter(e)
Проведите мероприятие DragEnter.
- e
protected override void OnDragLeave(DragEventArgs e)
diagramPanel.OnDragLeave(e)
Проведите мероприятие DragLeave.
- e
protected override void OnDragOver(DragEventArgs e)
diagramPanel.OnDragOver(e)
Проведите мероприятие DragOver.
- e
protected override void OnDrop(DragEventArgs e)
diagramPanel.OnDrop(e)
Проведите мероприятие Drop.
- e
protected override void OnGiveFeedback(GiveFeedbackEventArgs e)
diagramPanel.OnGiveFeedback(e)
Проведите мероприятие GiveFeedback.
- e
protected virtual void OnInitialLayoutCompleted()
diagramPanel.OnInitialLayoutCompleted()
Этот метод называется после того, как был выполнен первый макет и вычислен DiagramBounds.
protected virtual void OnLayoutCompleted()
diagramPanel.OnLayoutCompleted()
Этот метод называется после выполнения каждого макета и вычисления DiagramBounds.
protected override void OnLostMouseCapture(MouseEventArgs e)
diagramPanel.OnLostMouseCapture(e)
Управляйте событием, когда мышь потеряна.
- e
protected override void OnMouseDown(MouseButtonEventArgs e)
diagramPanel.OnMouseDown(e)
Обработка события нажатия мыши.
- e
protected override void OnMouseEnter(MouseEventArgs e)
diagramPanel.OnMouseEnter(e)
Введите мышь в событие.
- e
protected override void OnMouseMove(MouseEventArgs e)
diagramPanel.OnMouseMove(e)
Управляйте событием движения мыши.
- e
protected override void OnMouseUp(MouseButtonEventArgs e)
diagramPanel.OnMouseUp(e)
Проведите мышью мероприятие.
- e
protected override void OnMouseWheel(MouseWheelEventArgs e)
diagramPanel.OnMouseWheel(e)
Управляйте событием колеса мыши.
- e
protected virtual void OnPositionChanged(Point oldpos, Point newpos)
diagramPanel.OnPositionChanged(oldpos, newpos)
Этот метод называется, когда позиция меняется.
- oldpos
- Точка в координатах модели
- newpos
- Точка в координатах модели
protected override void OnQueryContinueDrag(QueryContinueDragEventArgs e)
diagramPanel.OnQueryContinueDrag(e)
Проведите мероприятие QueryContinueDrag.
- e
protected virtual void OnScaleChanged(double oldscale, double newscale)
diagramPanel.OnScaleChanged(oldscale, newscale)
Этот метод называется, когда шкала изменяется.
- oldscale
- двойной
- newscale
- двойной
protected virtual void OnSizeChanged(Size oldsize, Size newsize)
diagramPanel.OnSizeChanged(oldsize, newsize)
Этот метод называется, когда фактический размер панели изменяется.
- oldsize
- a Размер в координатах элементов
- newsize
- a Размер в координатах элементов
protected virtual void OnViewportBoundsChanged(RoutedPropertyChangedEventArgs<Rect> e)
diagramPanel.OnViewportBoundsChanged(e)
Поднять ViewportBoundsChanged событие.
- e
protected override void OnVisualParentChanged(DependencyObject oldParent)
diagramPanel.OnVisualParentChanged(oldParent)
Каждый DiagramPanel должен быть в визуальном дереве диаграммы.
- oldParent
public void PageDown()
diagramPanel.PageDown()
Увеличивает VerticalOffset на ViewportHeight (Реализует IScrollInfo).
public void PageLeft()
diagramPanel.PageLeft()
Уменьшает HorizontalOffset на ViewportWidth (Реализует IScrollInfo).
public void PageRight()
diagramPanel.PageRight()
Увеличивает HorizontalOffset на ViewportWidth (Реализует IScrollInfo).
public void PageUp()
diagramPanel.PageUp()
Уменьшает VerticalOffset на ViewportHeight (Реализует IScrollInfo).
public void PerformGesture(GestureModifiers modifiers, Gesture action, Point down, Point up, Diagram other)
diagramPanel.PerformGesture(modifiers, action, down, up, other)
Имитация некоторых событий мыши.
- modifiers
- a GestureModifiers, некоторая комбинация Control, Shift и Alt
- action
- a Значение жеста, обычно MouseLeftButton; значение "Никто" ничего не делает
- down
- Точка в координатах модели для события мыши вниз; это значение должно быть в пределах ViewportBounds
- up
- Точка в координатах модели события мыши вверх; это значение должно быть в пределах ViewportBounds
- other
- Диаграмма, где мышь поднимается вверх. Если это отличается от диаграммы этой панели, произойдет симулируемое перетаскивание. (В WPF не используются реальные перетаскивания Windows.) Это может быть нулевым для использования диаграммы этой панели, таким образом сохраняя весь жест в этой диаграмме.
public void SetHorizontalOffset(double offset)
diagramPanel.SetHorizontalOffset(offset)
Изменить значение HorizontalOffset, изменив значение позиции. (Реализация IScrollInfo.)
- offset
public void SetScaleAndPosition(double newscale, Point newpos, int animationtime, Action act)
diagramPanel.SetScaleAndPosition(newscale, newpos, animationtime, act)
Установите свойства масштаба и позиции с помощью анимации.
- newscale
- Новое положительное двойное значение для шкалы
- newpos
- Новое значение точки для позиции
- animationtime
- время в миллисекундах; если очень короткое время, никакой анимации не происходит, и свойства просто устанавливаются
- act
- Действие, которое нужно выполнить после окончания анимации; ничего не делать после этого.
public void SetVerticalOffset(double offset)
diagramPanel.SetVerticalOffset(offset)
Изменить значение VerticalOffset, изменив значение позиции. (Реализация IScrollInfo.)
- offset
public void StopAutoScroll()
diagramPanel.StopAutoScroll()
Прекратите любое постоянное действие автопрокрутки.
public Point TransformModelToView(Point p)
result = diagramPanel.TransformModelToView(p)
Преобразовать точку в координатах модели в координаты элементов.
- p
public Point TransformViewToModel(Point p)
result = diagramPanel.TransformViewToModel(p)
Преобразовать точку в координатах элементов в координаты модели.
- p
public void UpdateDiagramBounds()
diagramPanel.UpdateDiagramBounds()
Просьба обновить значение DiagramBounds, позвонив по адресу ComputeDiagramBounds.
public void ZoomToFit()
diagramPanel.ZoomToFit()
Измените Шкалу так, чтобы все в пределах DiagramBounds вписывалось в поле зрения.
public void ZoomToFit(StretchPolicy policy, Action afterwards)
diagramPanel.ZoomToFit(policy, afterwards)
Измените Шкалу так, чтобы все в пределах DiagramBounds вписывалось в поле зрения.
- policy
- Как правило, значение Uniform, но может быть UniformToFill
- afterwards
- Действие, которое должно быть выполнено после завершения анимации; может быть недействительным
События
public event RoutedPropertyChangedEventHandler<Rect> DiagramBoundsChanged
diagramPanel.DiagramBoundsChanged += handler
Это событие происходит, когда изменяются границы или выравнивание диаграммы.
public event RoutedPropertyChangedEventHandler<Rect> ViewportBoundsChanged
diagramPanel.ViewportBoundsChanged += handler
Это событие происходит при изменении области просмотра.
Поля
public static readonly DependencyProperty AutoScrollDelayProperty
value = DiagramPanel.AutoScrollDelayProperty
Идентифицирует свойство зависимости AutoScrollDelay.
public static readonly DependencyProperty AutoScrollRegionProperty
value = DiagramPanel.AutoScrollRegionProperty
Идентифицирует свойство зависимости AutoScrollRegion.
public static readonly DependencyProperty AutoScrollTimeProperty
value = DiagramPanel.AutoScrollTimeProperty
Идентифицирует свойство зависимости AutoScrollTime.
public static readonly DependencyProperty CanHorizontallyScrollProperty
value = DiagramPanel.CanHorizontallyScrollProperty
Идентифицирует свойство зависимости CanHorizontallyScroll.
public static readonly DependencyProperty CanVerticallyScrollProperty
value = DiagramPanel.CanVerticallyScrollProperty
Идентифицирует свойство зависимости CanVerticallyScroll.
public static readonly RoutedEvent DiagramBoundsChangedEvent
value = DiagramPanel.DiagramBoundsChangedEvent
Идентифицирует перенаправленное событие DiagramBoundsChanged.
public static readonly DependencyProperty DiagramBoundsProperty
value = DiagramPanel.DiagramBoundsProperty
Идентифицирует свойство зависимости DiagramBounds.
public static readonly DependencyProperty FixedBoundsProperty
value = DiagramPanel.FixedBoundsProperty
Идентифицирует свойство зависимости FixedBounds.
public static readonly DependencyProperty HorizontalContentAlignmentProperty
value = DiagramPanel.HorizontalContentAlignmentProperty
Идентифицирует свойство зависимости HorizontalContentAlignment.
public static readonly DependencyProperty MaximumScaleProperty
value = DiagramPanel.MaximumScaleProperty
Идентифицирует свойство зависимости MaximumScale.
public static readonly DependencyProperty MinimumScaleProperty
value = DiagramPanel.MinimumScaleProperty
Идентифицирует свойство зависимости MinimumScale.
public static readonly DependencyProperty PaddingProperty
value = DiagramPanel.PaddingProperty
Идентифицирует свойство зависимости Padding.
public static readonly DependencyProperty PositionProperty
value = DiagramPanel.PositionProperty
Идентифицирует свойство зависимости позиции.
public static readonly DependencyProperty ScaleProperty
value = DiagramPanel.ScaleProperty
Идентифицирует свойство зависимости Scale.
public static readonly DependencyProperty ScrollHorizontalLineChangeProperty
value = DiagramPanel.ScrollHorizontalLineChangeProperty
Идентифицирует свойство зависимости ScrollHorizontalLineChange.
public static readonly DependencyProperty ScrollOwnerProperty
value = DiagramPanel.ScrollOwnerProperty
Идентифицирует свойство зависимости ScrollOwner.
public static readonly DependencyProperty ScrollVerticalLineChangeProperty
value = DiagramPanel.ScrollVerticalLineChangeProperty
Идентифицирует свойство зависимости ScrollVerticalLineChange.
public static readonly DependencyProperty StretchProperty
value = DiagramPanel.StretchProperty
Идентифицирует свойство зависимостей Stretch.
public static readonly DependencyProperty VerticalContentAlignmentProperty
value = DiagramPanel.VerticalContentAlignmentProperty
Идентифицирует свойство зависимости VerticalContentAlignment.
public static readonly RoutedEvent ViewportBoundsChangedEvent
value = DiagramPanel.ViewportBoundsChangedEvent
Идентифицирует перенаправленное событие ViewportBoundsChanged.
public static readonly DependencyProperty ZoomPointProperty
value = DiagramPanel.ZoomPointProperty
Идентифицирует свойство зависимости ZoomPoint.
public static readonly DependencyProperty ZoomTimeProperty
value = DiagramPanel.ZoomTimeProperty
Идентифицирует свойство зависимости ZoomTime.