public void CheckColumens(ColumnUnitType CUT, double Width)
 {
     foreach (GridViewColumn x in GRD.Columns)
     {
         try { ColumnController CI = Columns[x]; }
         catch { Columns.Add(x, new ColumnController(x, this, CUT, Width)); }
     }
 }
        public ColumnController GetColumenItem(GridViewColumn GVC, ColumnUnitType CUT)
        {
            switch (CUT)
            {
            case ColumnUnitType.Pixel: return(GetColumenItem(GVC, CUT, GVC.Width));

            default: return(GetColumenItem(GVC, CUT, 1));
            }
        }
 public static ColumnTracker GetColumnTracker(this ListView LST, ColumnUnitType CUT, double Width)
 {
     if (LST.Tag is ColumnTracker)
     {
         return(LST.Tag as ColumnTracker);
     }
     else if (LST.View is GridView)
     {
         return((ColumnTracker)(LST.Tag = new ColumnTracker(LST, CUT, Width)));
     }
     else
     {
         return(null);
     }
 }
 public ColumnController GetColumenItem(GridViewColumn GVC, ColumnUnitType CUT, double Width)
 {
     if (!Columns.ContainsKey(GVC))
     {
         Columns.Add(GVC, new ColumnController(GVC, this, CUT, Width));
     }
     else
     {
         Columns[GVC].ColumnUnitType = CUT;
         Columns[GVC].Width          = Width;
         Columns[GVC].HWSet();
     }
     Refresh();
     return(Columns[GVC]);
 }
        public ColumnController(GridViewColumn GVC, ColumnTracker CT, ColumnUnitType GUT, double _Width)
        {
            ColumnTracker = CT;
            Width         = _Width;

            switch (ColumnUnitType = GUT)
            {
            case ColumnUnitType.Pixel: IsFixed = false; break;

            case ColumnUnitType.HeaderWidth: Column.Width = GetWidth(); goto case ColumnUnitType.Star;

            case ColumnUnitType.Star: IsFixed = true; break;
            }
            INotifyPropertyChanged INP = (Column = GVC) as INotifyPropertyChanged;

            INP.PropertyChanged += Columen_SizeChanged;
        }
 public ColumnTracker(ListView _LST, ColumnUnitType CUT, double Width)
 {
     Set_LST_GRD(_LST);
     CheckColumens(CUT, Width);
 }
 public ColumnTracker(ListView _LST, ColumnUnitType CUT)
 {
     Set_LST_GRD(_LST);
     CheckColumens(CUT, 1);
 }
 public static ColumnTracker GetColumnTracker(this ListView LST, ColumnUnitType CUT)
 {
     return(GetColumnTracker(LST, CUT, 1));
 }
 public ColumnController GetColumenItem(int index, ColumnUnitType CUT, double Width)
 {
     return(GetColumenItem(GetColumnAt(index), CUT, Width));
 }
 public ColumnController GetColumenItem(int index, ColumnUnitType CUT)
 {
     return(GetColumenItem(GetColumnAt(index), CUT));
 }