그리드의 공유 크기 그룹 및 * 크기 조정
사용자 컨트롤이 있습니다.UserControl
다음과 같은 열 정의를 가진 그리드가 있습니다.
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" SharedSizeGroup="A"/>
<ColumnDefinition Width="Auto" SharedSizeGroup="B"/>
<ColumnDefinition Width="*" SharedSizeGroup="C"/>
<ColumnDefinition Width="Auto" SharedSizeGroup="D"/>
<ColumnDefinition MinWidth="30" Width="*" SharedSizeGroup="E"/>
<ColumnDefinition MinWidth="30" Width="*" SharedSizeGroup="F"/>
<ColumnDefinition Width="110" SharedSizeGroup="G"/>
<ColumnDefinition MinWidth="30" Width="Auto" SharedSizeGroup="H"/>
<ColumnDefinition MinWidth="30" Width="Auto" SharedSizeGroup="I"/>
<ColumnDefinition MinWidth="30" Width="Auto" SharedSizeGroup="J"/>
<ColumnDefinition MinWidth="30" Width="Auto" SharedSizeGroup="K"/>
<ColumnDefinition MinWidth="30" Width="Auto" SharedSizeGroup="L"/>
</Grid.ColumnDefinitions>
저도 있습니다.MainWindow
다음 속성이 그리드에 정의된 그리드 자체를 포함합니다.
Grid.IsSharedSizeScope="True"
이제 몇 가지 사용자 컨트롤을 그리드에 추가했습니다.MainWindow
(각각 별도의 행으로).제 목표는 서로 다른 사용자 컨트롤의 각 열 너비를 동기화된 상태로 유지하는 것입니다.사용 시 모든 것이 정상적으로 작동합니다.SharedSizeGroup
한 가지만 빼고.너비가 다음과 같은 열이 있는 것 같습니다.*
정상적으로 작동하지 않습니다.그것은 보기에*
열 너비가 동일하게 설정됩니다.Auto
대신.
제한 사항/문제가 있습니까?SharedSizeGroup
그리고.*
사이징?이것이 기둥 폭을 동기화하는 가장 좋은 방법인 것 같지만, 저는 이것을 고칠 수 없을 것 같습니다.
감사해요.
정의 기준입니다.공유 크기 그룹 속성(Microsoft Docs):
크기 공유에 참여하는 열과 행은 별 크기 조정을 고려하지 않습니다.크기 공유 시나리오에서 별 크기 조정은 자동으로 처리됩니다.
별표를 사용할 경우 모든 열의 너비가 같으므로 동일하게 할당해야 합니다.SharedSizeGroup
자동 검색 기능이 문제가 되지 않는다면 모두에게:
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" SharedSizeGroup="A"/>
<ColumnDefinition Width="Auto" SharedSizeGroup="B"/>
<ColumnDefinition Width="*" SharedSizeGroup="StarDontWork"/>
<ColumnDefinition Width="Auto" SharedSizeGroup="D"/>
<ColumnDefinition MinWidth="30" Width="*" SharedSizeGroup="StarDontWork"/>
<ColumnDefinition MinWidth="30" Width="*" SharedSizeGroup="StarDontWork"/>
<ColumnDefinition Width="110" SharedSizeGroup="G"/>
<ColumnDefinition MinWidth="30" Width="Auto" SharedSizeGroup="H"/>
<ColumnDefinition MinWidth="30" Width="Auto" SharedSizeGroup="I"/>
<ColumnDefinition MinWidth="30" Width="Auto" SharedSizeGroup="J"/>
<ColumnDefinition MinWidth="30" Width="Auto" SharedSizeGroup="K"/>
<ColumnDefinition MinWidth="30" Width="Auto" SharedSizeGroup="L"/>
</Grid.ColumnDefinitions>
(이 동작을 통해 다음을 삭제할 수도 있습니다.Width
자산의 경우SharedSizeGroup
설정됨)
모든 자동 크기 조정 열이 공유 크기 그룹에 있는 경우 모든 별 크기 조정 열의 크기가 범위의 모든 그리드에 남아 있는 사용되지 않은 공간의 양과 동일하고 별 크기 조정 열이 별 크기 열로 분배된다는 것을 추론할 수 있습니다.
간단한 예:
<Grid.ColumnDefinitions>
<ColumnDefinition SharedSizeGroup="A"/>
<ColumnDefinition SharedSizeGroup="B" Width="*"/>
<ColumnDefinition SharedSizeGroup="C"/>
</Grid.ColumnDefinitions>
설명한 바와 같이Width="*"
아무것도 하지 않을 것이지만 열로서.0
그리고.2
동기화됨, 열1
또한 동기화되어야 하기 때문에 당신은 그냥 그것을 놓을 수 있습니다.SharedSizeGroup
:
<Grid.ColumnDefinitions>
<ColumnDefinition SharedSizeGroup="A"/>
<ColumnDefinition Width="*"/>
<ColumnDefinition SharedSizeGroup="C"/>
</Grid.ColumnDefinitions>
언급URL : https://stackoverflow.com/questions/4664008/grids-sharedsizegroup-and-sizing
'programing' 카테고리의 다른 글
UITableViewCell, 스와이프 시 삭제 버튼 표시 (0) | 2023.04.27 |
---|---|
UI 도구 모음에 왼쪽 화살표 단추(예: UI 탐색 모음의 "뒤로" 스타일) 만들기 (0) | 2023.04.27 |
이미 실행 중인 프로세스의 출력을 리디렉션하는 방법 (0) | 2023.04.27 |
저장된 모든 프로시저에 실행 권한 부여 (0) | 2023.04.27 |
재귀적인 자기 결합을 하는 가장 간단한 방법은? (0) | 2023.04.27 |