/// <summary> /// Calculated content rectangle of node /// </summary> private Rectangle CalculateContentRectangle(TreeNode node, IntPtr hdc, int offset) { Rectangle rect = new Rectangle(node.TreeView.ClientRectangle.Left, node.Bounds.Top, node.TreeView.ClientSize.Width, node.Bounds.Height); RichText.RichText text = (RichText.RichText)myNodes[node]; rect.X += offset; rect.Width -= offset; return(new Rectangle(rect.Location, text.GetSize(hdc).ToSize())); }
/// <summary> /// Calculated content rectangle of Item /// </summary> private Rectangle CalculateContentRectangle(object item, Graphics g, Rectangle rect) { RichText.RichText text = ((ListItem)myItems[item]).RichText; IntPtr hdc = g.GetHdc(); try { Rectangle result = new Rectangle(rect.Location, text.GetSize(hdc).ToSize()); result.Width = rect.Width; return(result); } finally { g.ReleaseHdc(hdc); } }
public System.Drawing.Size GetSize(object item, System.Drawing.Graphics g) { if (!IsHandled(item)) { return(new Size()); } RichText.RichText text = ((ListItem)myItems[item]).RichText; IntPtr hdc = g.GetHdc(); try { Size size = text.GetSize(hdc).ToSize(); size.Height = myListBox.ItemHeight; size.Width += 3 + CalculateOffset(item); return(size); } finally { g.ReleaseHdc(hdc); } }
public Size GetSize(ListViewItem item, Graphics g) { if (!IsHandled(item)) { return(new Size()); } RichText.RichText text = (RichText.RichText)myItems[item]; IntPtr hdc = g.GetHdc(); try { Size size = text.GetSize(hdc).ToSize(); size.Height = item.Bounds.Height; size.Width += 3 + CalculateOffset(item); return(size); } finally { g.ReleaseHdc(hdc); } }