public F列结构_编辑(M元数据 __元数据, string __值, string __标题 = "") { _元数据 = __元数据; _值 = __值; InitializeComponent(); this.out标题.Text = __标题; this.Text = __标题; }
void out属性_CellDoubleClick(object sender, DataGridViewCellEventArgs e) { if (e.RowIndex < 0) { return; } var __名称 = (string)this.out值[0, e.RowIndex].Value; var __单元格 = this.out值[_值所在列索引, e.RowIndex].Value; var __值 = __单元格 == null ? "" : __单元格.ToString(); M元数据 __元数据 = null; E数据结构 __数据结构; if (_元数据列表 != null && e.RowIndex < _元数据列表.Count) { __元数据 = _元数据列表[e.RowIndex].元数据; __数据结构 = __元数据.结构; } else { __数据结构 = HJSON.识别数据结构(__值); } switch (__数据结构) { case E数据结构.单值: if (__值.Length > 10) { new F点结构_查看(__元数据, __值, __名称).ShowDialog(); } break; case E数据结构.对象: new F行结构_查看(__元数据 == null ? null : __元数据.子成员列表, string.IsNullOrEmpty(__值) ? "{}" : __值, this.out标题.Text + " - " + __名称).ShowDialog(); break; case E数据结构.单值数组: new F列结构_查看(__元数据, string.IsNullOrEmpty(__值) ? "[]" : __值, this.out标题.Text + " - " + __名称).ShowDialog(); break; case E数据结构.对象数组: new F表格结构_查看(__元数据 == null ? null : __元数据.子成员列表, string.IsNullOrEmpty(__值) ? "[{}]" : __值, this.out标题.Text + " - " + __名称).ShowDialog(); break; default: throw new ArgumentOutOfRangeException(); } }
void out属性_CellDoubleClick(object sender, DataGridViewCellEventArgs e) { //如果是非基元类型, 弹出明细 var __属性 = this.out属性.Rows[e.RowIndex].Tag as M属性; M元数据 __元数据 = __属性.元数据; E数据结构 __数据结构; var __名称 = __属性.称; var __值 = this.out属性.Rows[e.RowIndex].Cells[3].Value.ToString(); if (__元数据 != null) { __数据结构 = __元数据.结构; } else { __数据结构 = HJSON.识别数据结构(__值); } switch (__数据结构) { case E数据结构.单值: if (__值.Length > 10) { new F点结构_查看(__元数据, __值, __名称).ShowDialog(); } break; case E数据结构.对象: new F行结构_查看(__元数据 == null ? null : __元数据.子成员列表, __值, __名称).ShowDialog(); break; case E数据结构.单值数组: new F列结构_查看(__元数据, __值, __名称).ShowDialog(); break; case E数据结构.对象数组: new F表格结构_查看(__元数据 == null ? null : __元数据.子成员列表, __值, __名称).ShowDialog(); break; default: throw new ArgumentOutOfRangeException(); } }
public M子成员(string __名称, M元数据 __元数据) { this.名称 = __名称; this.元数据 = __元数据; }
public M子成员(string __名称, string __类型, E数据结构 __结构) { this.称 = __名称; this.元数据 = new M元数据(__类型, __结构); }
public M子成员(string __名称, string __类型) { this.称 = __名称; this.元数据 = new M元数据(__类型); }
public M子成员(string __名称, M元数据 __元数据) { this.称 = __名称; this.元数据 = __元数据; }