두 번째 패널이 맨 아래에 도킹되어 있고 AutoHide로 설정된 Avalon Docking에 문제가 있습니다. UI가 실행되면 창은 기본적으로 Docked/Visible로로드됩니다. 나는 그것을 숨기거나 최소화하고 싶다.Avalon Dock 자동로드시 문제 숨기기
<ad:DockingManager>
<ad:ResizingPanel Orientation="Vertical">
<ad:DocumentPane>
<ad:DocumentContent>
<... data grid that fills the view>
</ad:DocumentContent>
<ad:DocumentPane>
<ad:DockablePane>
<ad:DockableContent Title="output" DockableStyle="AutoHide" IsCloseable="False">
<...some control>
나는 다양한 "해킹"의 OnLoad, 당신은 UI가 창을로드
outputDockablePane.ToggleAutoHide();
그 작동, 의미가 숨겨져 있습니다 아발론 포럼에 제안 시도했다. 그러나 .cs 코드에서 자동 숨기기를 전환하면 런타임에 도크 헤더를 클릭하여 창 표시/부동화가 작동하지 않게합니다. 따라서 DockingMananger.OnMouseUp()을 연결하고 몇 가지 부울 상태를 파싱하고 수동으로 ToggleAutoHide()를 호출해야합니다. 나에게 해킹처럼 보입니다.
private void OnDockManagerLoaded(object sender, RoutedEventArgs e)
{
if(_firstTimeLoad && !_isDataGridLoaded)
{
outputDockablePane.ToggleAutoHide();
_forcedToAutoHide = true;
}
}
private void OnDockingManagerMouseUp(object sender, MouseButtonEventArgs e)
{
if (_forcedToAutoHide)
{
_forcedToAutoHide = false;
outputDockableContent.Activate();
outputDockablePane.ToggleAutoHide();
}
}
내가 완전히 놓친 거지, 및/또는 더 나은 방법 설정/속성이 있는가 : 여기
내가 적절하고 깨끗한 해결책을 찾을 때까지 내가 지금 뭐하는 거지입니까?