2

リボンウィンドウのタイトルを中央に配置し、横に並べないようにします。

このスレッドは、答えがあると述べています: XAMLコードを介してWPFリボンウィンドウタイトルを中央に配置する

しかし、それは機能しませんでした。

以下は画像と対応するコードです。

タイトルが中央に配置されていません

    <RibbonWindow x:Class="Window1"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="Window1" Height="300" Width="300">
    <Grid>
        <Ribbon>
            <Ribbon.TitleTemplate>
            <DataTemplate>
                <TextBlock TextAlignment="Center" HorizontalAlignment="Stretch" Width="{Binding ElementName=Window, Path=ActualWidth}">ApplicationTitle
                    <TextBlock.Effect>
                        <DropShadowEffect ShadowDepth="0" Color="MintCream " BlurRadius="10"   />
                    </TextBlock.Effect>
                </TextBlock>
            </DataTemplate>
            </Ribbon.TitleTemplate>
        </Ribbon>
    </Grid>
    </RibbonWindow>

.NET4.5と付属のSystem.Windows.Controls.Ribbonアセンブリを備えたVS2012を使用しています。

4

2 に答える 2

4

WPFにRibbonControlsLibraryを使用した経験がありませんでした。タイトルの中心化だけでなく問題もあります。また、上部のウィンドウの丸みを帯びた角を壊し、最大化するとアイコンとタイトルが画面から消えます。個人的には、リボングループダイアログをプログラムする機会がありません。これらすべてが私を代替案の検索に導き、Fluent RibbonControlsSuiteを見つけました。

ソースコードをダウンロードして、.NET 4.5用にビルドします(私はまったく問題なく実行しました)。

于 2012-10-20T15:41:29.600 に答える
3

ElementNameバインディング( )のWidth="{Binding ElementName=Window, Path=ActualWidth}"は、RibbonWindowの名前と一致する必要があります。したがって、この場合、名前に「ウィンドウ」が必要です。

<RibbonWindow x:Class="Window1" x:Name="Window"
    ... />
于 2012-10-18T16:40:54.267 に答える