Я надеюсь, что кто-то может помочь, я довольно новичок в WPF и хочу создать кнопку, которая выглядит как кнопка меню в мобильных приложениях и на чувствительных веб-приложениях, которая представляет собой квадратную кнопку с тремя горизонтальными линий.отзывчивый стиль меню в WPF
Я попытался создать кнопку с холстом и тремя строками, но это работает неправильно.
Может кто-нибудь предложить XAML, который мог бы достичь этого, пожалуйста?
EDIT
Я добавил код для моего приложения от ответа, XAML ниже
<Button x:Name="systemButton" IsTabStop="False" Style="{StaticResource LightWindowButtonStyle}" HorizontalAlignment="Left" VerticalAlignment="Top">
<Button.Content>
<Grid Width="31" Height="23" Background="Transparent">
<Grid.RowDefinitions>
<RowDefinition Height="*" />
<RowDefinition Height="*" />
<RowDefinition Height="*" />
</Grid.RowDefinitions>
<Path Data="M8,8 L28,8" Fill="{TemplateBinding Foreground}" Height="4" StrokeThickness="4" Stretch="Fill" Stroke="{TemplateBinding Foreground}" VerticalAlignment="Center" />
<Path Data="M8,8 L28,8" Fill="{TemplateBinding Foreground}" Height="4" StrokeThickness="4" Stretch="Fill" Stroke="{TemplateBinding Foreground}" VerticalAlignment="Center" Grid.Row="1" />
<Path Data="M8,8 L28,8" Fill="{TemplateBinding Foreground}" Height="4" StrokeThickness="4" Stretch="Fill" Stroke="{TemplateBinding Foreground}" VerticalAlignment="Center" Grid.Row="2" />
</Grid>
</Button.Content>
</Button>
В моем AeroWindow
классе я получаю экземпляр кнопки и привязки к событие щелчка, как показано ниже
var systemButton = this.GetTemplateChild("systemButton") as Button;
if (systemButton != null)
{
systemButton.Click += this.SystemButtonOnClick;
}
Но обработчик события никогда не срабатывает, когда я нажимаю кнопку т. Я проверил и systemButton
не null
, поэтому событие Click
привязано к обработчику событий, точка останова на обработчике событий никогда не попадает. У кого-нибудь есть идеи?
Благодарим Вас за это, линии выходят тонкие (как 1px) в моем приложении, как можно изменить это, я предполагаю, что высота будет это правильно? также как вы можете привязать Fill и Stroke к значениям, указанным в шаблоне. Также как бы я применил то же самое в , извините за миллион вопросов –
@Neil Задайте отдельные вопросы, так как есть и другие, которые используют этот сайт. Это хорошая практика. В любом случае, для тонких линий: используйте StrokeThickness = 5 в приведенном выше примере, который сделает линии достаточно хорошими и полностью удалит высоту. – AnjumSKhan