private void ApplyStyles(ListView control, ControlInfo info)
        {
            info.ParentDraw = true;

            ListViewRenderer renderer = new ListViewRenderer(StyleSheet, styleRenderer);

            bool ownerDraw = control.OwnerDraw;
            bool gridLines = control.GridLines;

            control.OwnerDraw   = true;
            control.BorderStyle = System.Windows.Forms.BorderStyle.None;
            control.GridLines   = false;

            ControlUtilities.SetDoubleBuffered(control, true);

            control.DrawColumnHeader += renderer.DrawColumnHeader;
            control.DrawItem         += renderer.DrawItem;
            control.DrawSubItem      += renderer.DrawSubItem;

            info.ResetControl += (c) => {
                control.DrawColumnHeader -= renderer.DrawColumnHeader;
                control.DrawItem         -= renderer.DrawItem;
                control.DrawSubItem      -= renderer.DrawSubItem;
            };
        }
 /// <summary>
 /// Initializes a new instance of the <see cref="ListViewTableViewDelegate"/> class.
 /// </summary>
 /// <param name="renderer">The <see cref="ListViewRenderer"/>.</param>
 public ListViewTableViewDelegate(ListViewRenderer renderer)
 {
     _element = renderer.Element;
     _source  = renderer.Control.Source;
 }
Ejemplo n.º 3
0
 /// <summary>
 /// Initializes a new instance of the <see cref="PixelScrollDetector"/> class.
 /// </summary>
 /// <param name="renderer">The <see cref="ListViewRenderer"/>.</param>
 public PixelScrollDetector(ListViewRenderer renderer)
 {
     this.renderer = renderer;
     _element      = renderer.Element;
     _density      = renderer.Context.Resources.DisplayMetrics.Density;
 }