Hilighted face is incomplete

Dear devs:
I change the selection type of context to TopAbs_FACE. And I also set hilight style of every AIS_Shape. When I choosed a face by mouse, the hilighted face is incomplete. Here are the codes.
```cpp
// Firstly, set the hilight style of the AIS_InteractiveObject
void KernelData::SetHighlightStyle(Handle(AIS_InteractiveObject)& aisShape)
{
if (aisShape.IsNull()) return;

Handle(Prs3d_Drawer) DynamicHilight_Drawer = new Prs3d_Drawer();
/*Handle(Prs3d_ShadingAspect) aPlaneAspect = new Prs3d_ShadingAspect();
Handle(Graphic3d_AspectFillArea3d) test = new Graphic3d_AspectFillArea3d();
test->SetFaceCulling(Graphic3d_TypeOfBackfacingModel_DoubleSided);
aPlaneAspect->SetAspect(test);*/
//DynamicHilight_Drawer->SetShadingAspect(aPlaneAspect);
DynamicHilight_Drawer->SetupOwnDefaults();
DynamicHilight_Drawer->SetColor(Quantity_NOC_KHAKI);
DynamicHilight_Drawer->WireAspect()->SetWidth(8.); // 设置鼠标放置时,wire的宽度
DynamicHilight_Drawer->SetMethod(Aspect_TypeOfHighlightMethod::Aspect_TOHM_COLOR);
DynamicHilight_Drawer->SetDisplayMode(1);
DynamicHilight_Drawer->SetTransparency(0.6f);
aisShape->SetDynamicHilightAttributes(DynamicHilight_Drawer);

Handle(Prs3d_Drawer) HilightDrawer = new Prs3d_Drawer();
HilightDrawer->SetupOwnDefaults();
HilightDrawer->WireAspect()->SetWidth(8.); // 设置高亮时的wire宽度
HilightDrawer->SetColor(Quantity_NOC_RED1);
HilightDrawer->SetDisplayMode(1);
aisShape->SetHilightAttributes(HilightDrawer);
}

// Secondly, changing the seleciton mode
Dictionary<String^, Object^>^ OCCTProxy::ChangeSelectMode(int index) {
ApiResponse^ ans = gcnew ApiResponse();

if (index < 0 || index > 5)
{
ans->SetAll(-1, "...", nullptr);
return ans->GetResponse();
}

try {
myAISContext()->Deactivate();
Wheel& wheel = KernelData::GetInstance()->GetActiveWheel();
switch (index) {
case 1:
myAISContext()->Activate(AIS_Shape::SelectionMode(TopAbs_SHAPE));
break;
case 2:
myAISContext()->Activate(AIS_Shape::SelectionMode(TopAbs_EDGE));
break;
case 3:
myAISContext()->Activate(AIS_Shape::SelectionMode(TopAbs_VERTEX));
break;
case 4:
myAISContext()->Activate(AIS_Shape::SelectionMode(TopAbs_WIRE));
break;
case 5:
myAISContext()->Activate(AIS_Shape::SelectionMode(TopAbs_FACE));
break;
}
ans->SetAll(1, "...", nullptr);
}
catch (Exception^ ex) {
ans->SetAll(-1, "..." + ex->Message, nullptr);
}
return ans->GetResponse();
}

// then using mouse to select a face
```
Could someone tell me why? Thany you so much.