簡體   English   中英

WPF 工具提示文本對齊

[英]WPF ToolTip Text Alignment

我有以下ListViewItem

                    <GridViewColumn Width="{Binding ActualWidth, 
                                              RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type Grid}}, 
                                              Converter={StaticResource MathConverter}, ConverterParameter=(x/10)*1}">
                        <GridViewColumn.Header>
                            <GridViewColumnHeader Content=" Total Fees "
                                                  HorizontalContentAlignment="Right" />
                        </GridViewColumn.Header>
                        <GridViewColumn.CellTemplate>
                            <DataTemplate>
                                <TextBlock Text="{Binding GarnishmentTotals.TotalFees, StringFormat={}{0:c}}"
                                           TextAlignment="Right" />
                            </DataTemplate>
                        </GridViewColumn.CellTemplate>
                    </GridViewColumn>

此商品的Style如下:

    <Style x:Key="MultipleGarnishmentsStyle" TargetType="ContentControl">
        <Style.Triggers>
            <DataTrigger Binding="{Binding Garnishments.Count, Converter={StaticResource GreaterThanEqualToBooleanConverter}, ConverterParameter=2}" Value="True"
                         h:TriggerTracing.TriggerName="MultipleGarnishmentsStyle_Trigger1"
                         h:TriggerTracing.TraceEnabled="True">
                <!-- Leave the content alone and just change the format string -->
                <Setter Property="TextBlock.FontWeight" Value="UltraBold" />
                <Setter Property="ToolTip" Value="Employee has multiple garnishments. Double click to view details." />
            </DataTrigger>
        </Style.Triggers>
    </Style>

我在ToolTip對齊文本時遇到問題。

在此處輸入圖片說明

文本似乎使用 ListViewItems 文本對齊(右)。 我嘗試將以下屬性添加到樣式中,但沒有任何變化:

<Setter Property="TootlTip.HorizontalAlignment" Value="Left" />
<Setter Property="TootlTip.HorizontalContentAlignment" Value="Left" />
<Setter Property="TootlTip.Width" Value="300" />

有沒有辦法增加ToolTip寬度,這樣文本就不會換行,或者使ToolTip文本左對齊。

我遇到了同樣的問題,經過一些挖掘( RibbonToolTip 繼承了文本框的對齊方式),我找到了一個解決方案。 也許晚了,但對他人有益。

您需要做的是像這樣設置 ToolTip 樣式:

     <Style TargetType="ToolTip">
        <Setter Property="TextBlock.TextAlignment" Value="Left"/>
     </Style>

由於 Tooltip 是一個 ContentControl,您可以根據需要自定義其內容。 考慮以下示例:

<Grid>
    <Button Content="Hi there!">
        <Button.Style>
            <Style TargetType="Button">
                <Setter Property="ToolTip">
                    <Setter.Value>
                        <ToolTip  MaxWidth="100" HorizontalContentAlignment="Center">
                            <TextBlock Text="fsdfasdfasdfasdfasdfasdfadsfasdf fadsfadsf adfa fdasfasdfasdfa adfasd" TextAlignment="Center" HorizontalAlignment="Center" TextWrapping="Wrap"/>
                        </ToolTip>
                    </Setter.Value>
                </Setter>
            </Style>
        </Button.Style>
    </Button>
</Grid>

您可以使用內容的屬性(在本例中為 TextBlock)以獲得您想要的最終外觀。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM