qinjie
2023-11-23 1c0be3112f45f4cb10f2fb41398407a3b4de5bc1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using static Hydro.MapView.MapViewEnum;
 
namespace Hydro.MapView
{
    public interface IBaseViewModel
    {
        [Category("1、基本信息")]
        [Description("对象的ID唯一标识")]
        [DisplayName(" 编号 ")]
        string ID { get; set; }
 
        string Name { get; set; }
 
        [Category("4、其他参数")]
        [Description("选中")]
        [DisplayName("选中")]
        [Browsable(false)]
        bool Selected { get; set; }
 
 
        [Category("4、其他参数")]
        [Description("选中")]
        [DisplayName("位置信息")]
        [Browsable(false)]
        PointF Position { get; set; }//= new PointF(0, 0);
 
        [Browsable(false)]
        [JsonIgnore]
        String regionName { get; set; }//= null; 
 
        [Category("1、基本信息")]
        [Description("X坐标")]
        [DisplayName("X坐标")]
        [Browsable(true)]
        float X { get; set; }
        //{
        //    get
        //    {
        //        return Position.X;
        //    }
        //    set
        //    {
        //        Position = new PointF(value, Position.Y);
        //    }
        //}
        [Category("1、基本信息")]
        [Description("Y坐标")]
        [DisplayName("Y坐标")]
        [Browsable(true)]
        float Y { get; set; }
        //{
        //    get
        //    {
        //        return Position.Y;
        //    }
        //    set
        //    {
        //        Position = new PointF(Position.X, value);
        //    }
        //}
 
        [Category("1、基本信息")]
        [Description("标高")]
        [DisplayName("标高")]
        [Browsable(true)]
        float Elev { get; set; }
 
        [Category("4、其他参数")]
        [Description("对象的等级")]
        [DisplayName("级别")]
        //[Editor(typeof(MyPropertyEditor), typeof(UITypeEditor))]
 
        int Level { get; set; } //= 0;
        [Category("4、其他参数")]
        [Description("对象的等级")]
        [DisplayName("是否显示")]
        bool Visible { get; set; } //= true;
 
        //[Category("4、其他参数")]
        //[Description("标签集合")]
        //[DisplayName("标签")]
        //public string Tags { get; set; } = null;
 
        [Category("1、基本信息")]
        [Description("类型")]
        [DisplayName("类型")]
        MapObjectType Type { get; }// { get { return this.GetTypeString(); } }
 
        //[Browsable(false)]
        [Category("4、其他参数")]
        [Description("ID类型")]
        [DisplayName("ID类型")]
        [Browsable(false)]
        string IDType { get; }// => Type.ToString()+"\t"+ ID;
        MapObjectType GetTypeString();
 
 
        bool isNode();
    }
}