1

WPF で垂直プログレス バーを実装しようとしていますが、問題があります。Vertical progress bar template .netからの Greg D の回答に従っていますが、うまくいきません。外部スタイルとインラインの両方を使用してみましたが、うまくいきませんでした。比較的単純な答えのように見えるので、面倒です。

これが私のXAMLものです。

<ProgressBar Name="VolumeMeter" Orientation="Vertical" Margin="4,30,0,0" 
Value="50" HorizontalAlignment="Left" VerticalAlignment="Top" Height="300" Width="10">
    <ProgressBar.Template>
    <ControlTemplate>

            <Border BorderBrush="Green" x:Name="Root" BorderThickness="1">
                <Grid Name="PART_Track" Background="Red">
                    <Rectangle Name="PART_Indicator" Fill="Blue"/>
                </Grid>
            </Border>

            <ControlTemplate.Triggers>
            <Trigger Property="Orientation" Value="Vertical">//Error Here

                <!-- Rotate the progressbar so the left edge is the bottom edge -->
                <Setter TargetName="Root" Property="LayoutTransform">
                    <Setter.Value>
                        <RotateTransform Angle="270" />
                    </Setter.Value>
                </Setter>

                <Setter TargetName="Root" Property="Width"
                Value="{Binding RelativeSource={RelativeSource TemplatedParent}, 
Path=Height}"/>
                <Setter TargetName="Root" Property="Height"
                Value="{Binding RelativeSource={RelativeSource TemplatedParent}, 
Path=Width}"/>
            </Trigger>
        </ControlTemplate.Triggers>
    </ControlTemplate>

    </ProgressBar.Template>
</ProgressBar>

私が得ているエラーは<Trigger Property="Orientation" Value="Vertical">行にあります。

タイプ 'System.Windows.Controls.Control' のテンプレート プロパティ 'Orientation' が見つかりません。

4

2 に答える 2

6

の を設定しTargetTypeますControlTemplate

于 2012-07-06T14:30:05.927 に答える
2
<ControlTemplate TargetType="ProgressBar">

また

 <Trigger Property="ProgressBar.Orientation" Value="Vertical">
于 2012-07-06T14:33:43.010 に答える