Как убрать рамку в combobox?

569
29 декабря 2016, 05:57

Как убрать рамку чтобы осталась только стрелка ▼ ? И необходимо сделать стрелку белой. Пробую таким образом

        <ComboBox x:Name="comboBox" Width="16" Height="20" Margin="570,10,10,670" BorderBrush="{x:Null}" Background="{x:Null}"  Foreground="Black" IsReadOnly="True">
            <ComboBoxItem Content="Свернуть"/>
            <ComboBoxItem Content="Закрыть"/>
        </ComboBox>

Но это проблемы не решает. Всем заранее большое спасибо за помощь!

Answer 1

Нажмите правой кнопкой на Combobox в визуальном редакторе, выберите Правка шаблона - Правка копии. В ваш xaml добавится огромный стиль, где есть всё. Например, стрелка:

<Path x:Name="Arrow"
        Data="{StaticResource DownArrowGeometry}"
        Fill="Black"
        HorizontalAlignment="Center"
        Margin="3,1,0,0"
        VerticalAlignment="Center" />

Меняйте Fill на White.

Для рамки найдите

<ControlTemplate TargetType="{x:Type ToggleButton}">
<Themes:ButtonChrome x:Name="Chrome"
                            BorderBrush="{TemplateBinding BorderBrush}"
        Background="{TemplateBinding Background}"
        RenderMouseOver="{TemplateBinding IsMouseOver}"
        RenderPressed="{TemplateBinding IsPressed}"
        SnapsToDevicePixels="true">

Меняйте BorderBrush на {x:Null}.

Конечно этот стиль потом желательно вынести в другой файл.

READ ALSO
Отправить сообщение на e-mail

Отправить сообщение на e-mail

Есть необходимость автоматической рассылки писем на почтуКак отправить письмо на определенный e-mail?

414
Вынос картинки за пределы формы

Вынос картинки за пределы формы

Можно ли средствами C# сделать так, чтобы часть изображения было за пределами формы? Пример ниже:

451
Angular 2 и .Net Core

Angular 2 и .Net Core

Вот смотрю я на развитие Angular 2 Ionic 2 Это очень близко к WPFСейчас для

441
while + foreach подвешивает Unity C#

while + foreach подвешивает Unity C#

Есть вот такой кусок кода

463