0

リボンのテキスト ボックスから配置を継承する RibbonToolTips に問題があります。問題は、私が何をしてもこの動作をオーバーライドできないように見えることです。これは Textboxes と Labels でのみ現れるようで、RibbonTextBoxes は影響を受けないようです。

XAML:

<RibbonWindow x:Class="RibbonToolTipTest.MainWindow"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="MainWindow" Height="350" Width="525">
<Grid x:Name="LayoutRoot">
   <Ribbon Title="WPF Ribbon" x:Name="Ribbon">
       <RibbonTab>
           <RibbonGroup Width="300">
               <StackPanel Orientation="Horizontal">
                    <TextBox Text="This is a test" TextAlignment="Right" x:Name="RegularLabel" />
                    <TextBox Width="200" TextAlignment="Left"  x:Name="RegularTextBox"/>
                </StackPanel>
                <RibbonTextBox Width="200"
                               ToolTipTitle="Title"
                               ToolTipDescription="The moon was shining sulkily, Because she thought the sun Had got no business to be there After the day was done — &quot;It's very rude of him,&quot; she said, &quot;To come and spoil the fun.&quot;" 
                               Label="Label" />
           </RibbonGroup>
       </RibbonTab>
   </Ribbon>
</Grid>

分離コード:

using System.Windows.Controls.Ribbon;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;

namespace RibbonToolTipTest
{
    /// <summary>
    /// Interaction logic for MainWindow.xaml
    /// </summary>
    public partial class MainWindow : RibbonWindow
    {
        public MainWindow()
        {
            InitializeComponent();
            RegularTextBox.ToolTip = RegularLabel.ToolTip = new RibbonToolTip()
            {
                Title = "Title",
                Description =
                    "The sun was shining on the sea, Shining with all his might: He did his very best to make The billows smooth and bright — And this was odd, because it was The middle of the night. ",
                HorizontalContentAlignment = HorizontalAlignment.Left,
                HorizontalAlignment = HorizontalAlignment.Left
            };
        }
    }
}
4

1 に答える 1

2

TextBlock.TextAlignment物件を試してみてはいかがですか?詳細については、MSDNのTextBlock.TextAlignment プロパティページを参照してください。

編集 >>>

申し訳ありませんが、残りは解決できると思いました。セクションの aStyleで使用した場合、「それを行う」ことができます。Resources

<Style TargetType="{x:Type RibbonToolTip}">
    <Setter Property="TextBlock.TextAlignment" Value="Left" />
</Style>

.NET 4.5 より古い .NET Framework を使用しているユーザーはRibbonControlLibrary、Microsoft のダウンロード センターから dll をダウンロードできます。インストールしたら、XML 名前空間を追加できます。

xmlns:Ribbon="clr-namespace:Microsoft.Windows.Controls.Ribbon;assembly=RibbonControlsLibrary"

そして、次のようにスタイルを設定します。

<Style TargetType="{x:Type Ribbon:RibbonToolTip}">
    <Setter Property="TextBlock.TextAlignment" Value="Left" />
</Style>
于 2013-08-12T14:42:03.173 に答える