我创建了一个由两个WPF TextBlocks组成的按钮。我在第二个TextBlock中添加了一个边距,以便从第一个TextBlock中添加空格,并且两个TextBlock都包含在StackPanel中。
问题是空格(第二个TextBlock的左边距)没有响应点击。我不仅希望TextBlocks可以点击,而且还希望它们之间的空白区域。
这是代码
<Button HorizontalAlignment="Right" VerticalAlignment="Top" Margin="0 20 20 0" Command="{Binding OpenSideMenuCommand}">
<Button.Template>
<ControlTemplate TargetType="Button">
<ContentPresenter />
</ControlTemplate>
</Button.Template>
<StackPanel Orientation="Horizontal" HorizontalAlignment="Stretch">
<TextBlock Text="" FontFamily="{StaticResource FontAwesome}"
FontSize="{StaticResource FontSizeXXLarge}" VerticalAlignment="Center" />
<TextBlock Text="Menu" Margin="30 0 0 0" FontSize="{StaticResource FontSizeXXLarge}" />
</StackPanel>
</Button>
这是结果
答案 0 :(得分:4)
出于某种原因,如果面板上没有&#34;空&#34;
,则无法点击该面板。解决此问题的一种方法是设置其Background
属性,例如:
<Button HorizontalAlignment="Right" VerticalAlignment="Top" Margin="0 20 20 0" Command="{Binding OpenSideMenuCommand}">
<Button.Template>
<ControlTemplate TargetType="Button">
<ContentPresenter />
</ControlTemplate>
</Button.Template>
<StackPanel Background="Transparent" Orientation="Horizontal" HorizontalAlignment="Stretch">
<TextBlock Text="" FontFamily="{StaticResource FontAwesome}"
FontSize="{StaticResource FontSizeXXLarge}" VerticalAlignment="Center" />
<TextBlock Text="Menu" Margin="30 0 0 0" FontSize="{StaticResource FontSizeXXLarge}" />
</StackPanel>
</Button>