Files

56 lines
1.8 KiB
C#
Raw Permalink Normal View History

2025-07-14 21:08:46 +08:00
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Input;
using System.Windows.Shapes;
namespace VisionFrame.Base
{
public class NodeBase : UserControl
{
//public ICommand AnchorDownCommand { get; set; }
//public ICommand AnchorUpCommand { get; set; }
public ICommand AnchorDownCommand
{
get { return (ICommand)GetValue(AnchorDownCommandProperty); }
set { SetValue(AnchorDownCommandProperty, value); }
}
public static readonly DependencyProperty AnchorDownCommandProperty =
DependencyProperty.Register("AnchorDownCommand",
typeof(ICommand), typeof(NodeBase), new PropertyMetadata(null));
public ICommand AnchorUpCommand
{
get { return (ICommand)GetValue(AnchorUpCommandProperty); }
set { SetValue(AnchorUpCommandProperty, value); }
}
public static readonly DependencyProperty AnchorUpCommandProperty =
DependencyProperty.Register("AnchorUpCommand",
typeof(ICommand), typeof(NodeBase), new PropertyMetadata(null));
public void Ellipse_MouseLeftButtonDown(object sender, MouseButtonEventArgs e)
{
this.AnchorDownCommand?.Execute(
(this.DataContext as NodeModelBase).NodeId + ";" + (sender as Ellipse).Tag.ToString()
);
e.Handled = true;
}
public void Ellipse_MouseLeftButtonUp(object sender, MouseButtonEventArgs e)
{
this.AnchorUpCommand?.Execute(
(this.DataContext as NodeModelBase).NodeId + ";" + (sender as Ellipse).Tag.ToString()
);
e.Handled = true;
}
}
}