You can create DropdownColumn inheritor and override two-three procedures to implement this look:
[C#]
public class AdvDropDownListColumn : DropDownListColumn
{
public AdvDropDownListColumn(string caption) : base(caption){}
private bool showDropDownButtons = false;
[DefaultValue(false)]
public bool ShowDropDownButtons
{
get
{
return showDropDownButtons;
}
set
{
if (showDropDownButtons != value)
{
showDropDownButtons = value;
base.OnChanged(InvalidationMode.ColumnWithoutHeader, false);
}
}
}
public override Rectangle GetEditableCellRect(FlyGridViewPort context, FlyGridViewPort grid, NodeBase node)
{
Rectangle er = base.GetEditableCellRect (context, grid, node);
if (showDropDownButtons)
er.Width -= SystemInformation.VerticalScrollBarWidth;
return er;
}
public override void PaintCell(CellDrawInfo dci)
{
Rectangle buttonRect = dci.cellRect;
if (showDropDownButtons)
{
dci.cellRect.Width -= SystemInformation.VerticalScrollBarWidth;
}
base.PaintCell (dci);
if (showDropDownButtons)
{
buttonRect = new Rectangle(buttonRect.Right - SystemInformation.VerticalScrollBarWidth, buttonRect.Y, SystemInformation.VerticalScrollBarWidth, buttonRect.Height);
ControlPaint.DrawComboButton(dci.g, buttonRect, ButtonState.Normal);
}
}
}