public ExpanderWidget() { label = new NSTextView() { AutoresizingMask = NSViewResizingMask.MaxYMargin | NSViewResizingMask.WidthSizable, Alignment = NSTextAlignment.Left, Editable = false, Selectable = false, DrawsBackground = false, Frame = new RectangleF(17, 3, 60, 13) }; disclosure = new NSButton() { BezelStyle = NSBezelStyle.Disclosure, AutoresizingMask = NSViewResizingMask.MaxYMargin, ImagePosition = NSCellImagePosition.ImageOnly, Frame = new RectangleF(5, 4, 13, 13), State = NSCellStateValue.On }; disclosure.SetButtonType(NSButtonType.OnOff); disclosure.AddObserver(this, new NSString("cell.state"), NSKeyValueObservingOptions.New, IntPtr.Zero); AutoresizesSubviews = true; backgroundGradient = new NSGradient(NSColor.FromCalibratedRgba(0.93f, 0.93f, 0.97f, 1.0f), NSColor.FromCalibratedRgba(0.74f, 0.76f, 0.83f, 1.0f)); strokeColor = NSColor.FromCalibratedRgba(0.60f, 0.60f, 0.60f, 1.0f); AddSubview(label); AddSubview(disclosure); }