Как скрыть заголовок в WPF Expander? - PullRequest
4 голосов
/ 18 января 2011

У меня есть бизнес-требование, чтобы, когда пользователь щелкает серию флажков в приложении WPF, он отображал панели в зависимости от того, какие флажки они выбрали. Я хотел бы использовать панель расширения, но я не уверен, как скрыть заголовок. Пользователю не должно быть разрешено видеть его, если он не установит флажок. Кто-нибудь знает?

Ответы [ 3 ]

4 голосов
/ 18 января 2011

Вы можете сделать это, сделав собственный стиль для вашего Expander .

Однако, может быть проще просто поместить элементы управления на другую панель и установить видимость для Collapsedв ответ на состояние флажка.Основной причиной использования Expander является наличие заголовка и элементов управления.

2 голосов
/ 18 января 2011

Пока не идеальный подход , вы могли бы пойти по этому пути ...

    <Expander>
        <Expander.Header>
            <TextBlock Visibility="{Binding IsExpanded, RelativeSource={RelativeSource AncestorType={x:Type Expander}, Mode=FindAncestor}, 
                 Converter={StaticResource BoolToVisibilityConverter}}">My Expander</TextBlock>
        </Expander.Header>
    </Expander>

... где BoolToVisibilityConverter это что-то вроде ...

    public class BoolToVisibilityConverter : IValueConverter
    {
        #region IValueConverter Members

        public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
        {
            if ((bool)value)
                return Visibility.Visible;
            return Visibility.Collapsed;
        }

        public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
        {
            if ((Visibility)value == Visibility.Visible)
                return true;
            return false;
        }

        #endregion
    }
0 голосов
/ 18 января 2011

В этом ответе есть все, что вам нужно: Кнопка расширения WPF Стилизована так, что она находится внутри заголовка расширителя

Если вы используете стиль, который он упоминает, и не устанавливаете содержимое заголовка, заголовок исчезает

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...