我在UserControl. 每當我使用HorizontalAlignment, HorizontalContentAlignment, 或Padding按鈕的寬度時,它的寬度都會自動提交給文本的寬度,而不是網格的寬度。我希望它與左側對齊,因此HorizontalContentAlignment="Stretch"無法使用。
頂部的 85 MHz 是問題所在。它應該像底部一樣延伸超過START 。 Texbtblock

相關代碼UserControl:
<Style x:Key="HeaderButtonStyle" TargetType="Button">
<!--Sets default values for Nav Buttons-->
<Setter Property="Background" Value="#212121"/>
<Setter Property="Foreground" Value="White"/>
<Setter Property="FontWeight" Value="Bold"/>
<Setter Property="FontFamily" Value="Roboto"/>
<Setter Property="HorizontalContentAlignment" Value="Center"/>
<Setter Property="Template">
<Setter.Value>
<!--This removes default blue highlight when hovering over button-->
<ControlTemplate TargetType="Button">
<Grid Background="{TemplateBinding Background}">
<ContentPresenter HorizontalAlignment="Center" VerticalAlignment="Center"/>
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
<Style.Triggers>
..無關代碼..
繼續相關代碼來自UserControl:
<Border Background="Transparent" BorderBrush="#707070" BorderThickness="0,0,1,0">
<Button Style="{StaticResource HeaderButtonStyle}"
VerticalAlignment="Stretch" HorizontalAlignment="Stretch"
Content="{Binding Path=ButtonContent, ElementName=HeaderButtonControl}"
/>
</Border>
主視窗中的代碼:
<Grid Background="#212121">
<!--7 col 1 row -->
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="2*" />
<ColumnDefinition />
<ColumnDefinition Width="2*"/>
<ColumnDefinition />
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<local:GraphHeaderButton ButtonContent="img" Grid.Row="0" FontSize="60" />
<Grid Grid.Column="1">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="*"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<local:GraphHeaderButton x:Name="graphHeaderButton" ButtonContent="85.000 MHz" HorizontalContentAlignment="Left" Padding="15,0,0,0" Grid.Row="0" Grid.Column="1" FontSize="26" BorderBrush="#707070" BorderThickness="0,0,0,1" />
<local:GraphHeaderButton x:Name="headerCenterFreq" ButtonContent="85.000 MHz " Grid.Row="1" Grid.Column="1" FontSize="26" />
<TextBlock Grid.Column="1" Grid.Row="0" Text="START" FontFamily="Roboto" FontSize="26" FontWeight="Bold" Foreground="DodgerBlue" VerticalAlignment="Center" HorizontalAlignment="Right" IsHitTestVisible="False" Margin="0 0 16 0"/>
<TextBlock Grid.Row="1" Text="CENTER" FontFamily="Roboto" FontSize="26" FontWeight="Bold" Foreground="DodgerBlue" VerticalAlignment="Center" HorizontalAlignment="Left" IsHitTestVisible="False" Margin="248,0,0,0" Height="36" Width="97"/>
</Grid>
任何想法都非常感謝。謝謝你。
uj5u.com熱心網友回復:
應用Column.Span="2"拉伸Button向下穿過TextBlock。
這是一個簡單的示例代碼。
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="100" />
<ColumnDefinition Width="100" />
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="*" />
<RowDefinition Height="*" />
</Grid.RowDefinitions>
<Button
Grid.Row="0"
Grid.RowSpan="2"
Grid.Column="0"
Content="img" />
<Button
Grid.Row="0"
Grid.Column="1"
Grid.ColumnSpan="2"
HorizontalContentAlignment="Left"
Click="Button_Click"
Content="85.000 MHz" />
<TextBlock
Grid.Row="0"
Grid.Column="2"
HorizontalAlignment="Right"
VerticalAlignment="Center"
IsHitTestVisible="False"
Text="START" />
<Button
Grid.Row="1"
Grid.Column="1"
Grid.ColumnSpan="2"
HorizontalContentAlignment="Left"
Click="Button_Click"
Content="85.000 MHz" />
<TextBlock
Grid.Row="1"
Grid.Column="2"
HorizontalAlignment="Right"
VerticalAlignment="Center"
IsHitTestVisible="False"
Text="CENTER" />
</Grid>
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/492869.html
