Проблема видимости GroupStyle Xaml на Windows Phone 8.1
Мне просто нужна пара дополнительных глаз, чтобы увидеть, что я здесь делаю неправильно.
У меня есть страница xaml с групповым стилем внутри списка. вот как это выглядит,
<GroupStyle
HeaderContainerStyle="{StaticResource JumpListListHeaderContainerStyle}"
HidesIfEmpty="True">
<GroupStyle.HeaderTemplate>
<DataTemplate>
<Border
Background="{ThemeResource ApplicationPageBackgroundThemeBrush}"
BorderThickness="0,0,0,1"
BorderBrush="{StaticResource RedBrush}"
Margin="0,0,0,9.5">
<TextBlock Text="{Binding Key}"
Foreground="{StaticResource RedBrush}"
FontSize="23"
Visibility="{Binding IsGroupheaderVisible, Converter={StaticResource BooleanToVisibilityConverter}}"
FontFamily="Segoe WP Semibold"
OpticalMarginAlignment="TrimSideBearings"
VerticalAlignment="Bottom" />
</Border>
</DataTemplate>
</GroupStyle.HeaderTemplate>
</GroupStyle>
Что мне нужно сделать, это скрыть заголовок groupstule на основе условия в viewmodel. Вот собственность.
private bool _isGroupHeaderVisibile;
public bool IsGroupheaderVisible
{
get { return _isGroupHeaderVisibile; }
set
{
if (value == _isGroupHeaderVisibile) return;
_isGroupHeaderVisibile = value;
NotifyOfPropertyChange(() => IsGroupheaderVisible);
}
}
и на событии OnInitialize я устанавливаю его в true или false в зависимости от некоторых условий. Но, к сожалению, это не скрывает / показывает, но всегда обнаруживается.
Вот BooleanToVisibilityConverter, который я использую,
public class BooleanToVisibilityConverter : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, string language)
{
bool flag;
return value != null && bool.TryParse(value.ToString(), out flag) && flag
? Visibility.Visible
: Visibility.Collapsed;
}
public object ConvertBack(object value, Type targetType, object parameter, string language)
{
return value is Visibility && (Visibility)value == Visibility.Visible;
}
}
ПРИМЕЧАНИЕ: я использую CaliburnMicro, поэтому у меня есть методы, такие как OnInitialize(), которые я опускаю.