12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576 |
- using System;
- using System.Collections.Generic;
- using System.Windows;
- using InABox.Core;
- namespace InABox.DynamicGrid
- {
- public class ColumnNameGenerator : LookupGenerator<object>
- {
- public ColumnNameGenerator(object[] items) : base(items)
- {
- //DynamicGridColumns cols = new DynamicGridColumns();
- //cols.ExtractColumns(type, "");
- //foreach (DynamicGridColumn col in cols.Where(x => (x.Editor != null) && (x.Editor.Visible != Visible.Disabled)))
- // AddValue(col.ColumnName, col.ColumnName);
- }
- }
- public class DynamicGridColumn : DynamicColumnBase
- {
- public DynamicGridColumn()
- {
- Editor = new NullEditor();
- }
- [ComboLookupEditor(typeof(ColumnNameGenerator), Visible = Visible.Default)]
- [EditorSequence(1)]
- public string ColumnName { get; set; }
- [EditorSequence(2)]
- [IntegerEditor(Visible = Visible.Default)]
- public int Width { get; set; }
- [EditorSequence(3)]
- [TextBoxEditor(Visible = Visible.Default)]
- public string Caption { get; set; }
- [EditorSequence(4)]
- [TextBoxEditor(Width = 60, Visible = Visible.Default)]
- public string Format { get; set; }
- [EnumLookupEditor(typeof(Alignment), Width = 100, Visible = Visible.Default)]
- [EditorSequence(5)]
- public Alignment Alignment { get; set; }
- public BaseEditor Editor { get; set; }
- public VerticalAlignment VerticalAlignment()
- {
- if (Alignment.Equals(Alignment.NotSet))
- return System.Windows.VerticalAlignment.Center;
- if (Alignment.Equals(Alignment.TopLeft) || Alignment.Equals(Alignment.TopCenter) || Alignment.Equals(Alignment.TopRight))
- return System.Windows.VerticalAlignment.Top;
- if (Alignment.Equals(Alignment.MiddleLeft) || Alignment.Equals(Alignment.MiddleCenter) || Alignment.Equals(Alignment.MiddleRight))
- return System.Windows.VerticalAlignment.Center;
- return System.Windows.VerticalAlignment.Bottom;
- }
- public HorizontalAlignment HorizontalAlignment(Type datatype)
- {
- if (Alignment.Equals(Alignment.NotSet))
- return datatype.IsNumeric() ? System.Windows.HorizontalAlignment.Right :
- datatype == typeof(bool) ? System.Windows.HorizontalAlignment.Center : System.Windows.HorizontalAlignment.Left;
- if (Alignment.Equals(Alignment.TopLeft) || Alignment.Equals(Alignment.MiddleLeft) || Alignment.Equals(Alignment.BottomLeft))
- return System.Windows.HorizontalAlignment.Left;
- if (Alignment.Equals(Alignment.TopCenter) || Alignment.Equals(Alignment.MiddleCenter) || Alignment.Equals(Alignment.BottomCenter))
- return System.Windows.HorizontalAlignment.Center;
- return System.Windows.HorizontalAlignment.Right;
- }
- public override string ToString()
- {
- return ColumnName;
- }
- }
- }
|