TTreeView 焦点,该如何处理

TTreeView 焦点
我想实现这样的 当我选中TTreeview焦点时,选中区域为蓝色背景;当失去焦点时为灰色区域背景;

TreeView1AdvancedCustomDrawItem事件中处理的:

DefaultDraw = true;
PaintImages = false;
TRect r = Node->DisplayRect(true);

if (State.Contains(cdsFocused) || State.Contains(cdsSelected))
{
bFocused = false;
Sender->Canvas->Font->Color = clWhite;
Sender->Canvas->Brush->Color = clBlue;
Sender->Canvas->FillRect(r);
}
else if(bFocused)
{
Sender->Canvas->Font->Color = clBlack;
Sender->Canvas->Brush->Color = clGray;
Sender->Canvas->FillRect(r);
}
else
{
Sender->Canvas->Font->Color = clBlack;
Sender->Canvas->Brush->Color = clWindow;
Sender->Canvas->FillRect(r);
}
Sender->Canvas->DrawFocusRect(r);
Sender->Canvas->TextRect(r,r.Left + 2, r.Top + 1, Node->Text);

在Exit事件中 

Focused = true;

在Enter事件中处理:

       bFocused = false;
this->TreeView1->Invalidate();


这样可以实现,但是当我最小化窗口时,在显示窗口的时候,整个TTreeview的节点都是灰色的填充背景;该如何去修改呢?
------解决方案--------------------
这样试试
this->TreeView1->HideSelection = false;