PivotItem이 있지만 피벗 항목이없는 피벗 컨트롤을 갖고 싶습니다. 가로로 된 머리글 텍스트 (가로 모드의 갤러리, 세로로 되 돌리면 PivotItems 머리글을 다시 표시해야 함).PivotItem Header를 숨기는 방법?
헤더 텍스트가 차지하는 공간이 여전히 예약되어 있으므로 (사용되지 않는 빈 공간이 있으므로) 텍스트 PivotItem.Header = ""
을 만드는 해결책은 좋지 않습니다.
어떻게하면됩니까?
PivotItem이 있지만 피벗 항목이없는 피벗 컨트롤을 갖고 싶습니다. 가로로 된 머리글 텍스트 (가로 모드의 갤러리, 세로로 되 돌리면 PivotItems 머리글을 다시 표시해야 함).PivotItem Header를 숨기는 방법?
헤더 텍스트가 차지하는 공간이 여전히 예약되어 있으므로 (사용되지 않는 빈 공간이 있으므로) 텍스트 PivotItem.Header = ""
을 만드는 해결책은 좋지 않습니다.
어떻게하면됩니까?
당신은 그들을 이동하는 음의 값으로 피벗 항목의 상단 Margin
을 설정할 수 있습니다 헤더를
<controls:PivotItem Header="item1" Margin="0,-100,0,0">
그것은 제거하지 않지만, 갤러리 항목이 그 위에 수 있으므로 것 더 많은 공간을 확보하십시오. 캡션을 지우는 아이디어와 결합하면 해결할 수 있습니다.
더 우아한 해결책 :
<controls:Pivot.HeaderTemplate>
<DataTemplate>
<StackPanel Height="0" Width="0">
<TextBlock Text="{Binding}" />
</StackPanel>
</DataTemplate>
</controls:Pivot.HeaderTemplate>
이것은 Pivot.Header의 솔루션으로 PivotItem.Header에는 적용되지 않습니다. – lisp
당신은 먼저, 모든 pivotitem의 헤더를 절약하기 위해 모든 pivotitems '헤더를 설정할 수 있습니다 단지 DataTemplate을 비 공개 대상과 deafult의는 HeaderTemplate를 오버라이드 (override) (붕괴를하지만, NOT) 빈 문자열, 그 후에 모든 pivothead 영역이 사라집니다. 저장된 헤더 정보를 사용하여 복원 할 수 있습니다.
private void ResotorePivotItemHeaders()
{
if (_pivotItemHeaders.Count == pivot.Items.Count)
{
for (int i = 0; i < _pivotItemHeaders.Count; i++)
(pivot.Items[i] as PivotItem).Header = _pivotItemHeaders[i];
}
}
private void HidePivotItemHeaders()
{
if (pivot.Items.Count == 0)
return;
_pivotItemHeaders.Clear();
for (int i = 0; i<pivot.Items.Count; i++)
{
PivotItem item = pivot.Items[i] as PivotItem;
_pivotItemHeaders.Add(item.Header as String);
item.Header = "";
}
}
List<String> _pivotItemHeaders = new List<string>();
HeaderTemplate을 설정하십시오. http://stackoverflow.com/questions/4239071/wp7-pivotcontrol-set-header-null – invalidusername