0

ここに画像の説明を入力

  <Viewport2DVisual3D>

        <Viewport2DVisual3D.Transform>
            <Transform3DGroup>

                <RotateTransform3D>
                    <RotateTransform3D.Rotation>
                        <AxisAngleRotation3D x:Name="Win1Angle" Angle="0" Axis="0, 1, 0" />
                    </RotateTransform3D.Rotation>
                </RotateTransform3D>
                <ScaleTransform3D x:Name="ScaleUp" />
                <ScaleTransform3D x:Name="ScaleDown" />

                <TranslateTransform3D x:Name="MoveCenter1" />

            </Transform3DGroup>
        </Viewport2DVisual3D.Transform>


        <!-- The Geometry, Material, and Visual for the Viewport2DVisual3D -->
        <Viewport2DVisual3D.Geometry>
            <!-- positions of triangle    0          1           2           3      -->

            <MeshGeometry3D Positions="-.78,.58,0  -.78,-.58,0    .78,-.58,0    .78,.58,0"                                
                                    TextureCoordinates="0,0 0,1 1,1 1,0" 
                                    TriangleIndices="0 1 2 0 2 3" />

        </Viewport2DVisual3D.Geometry>

        <Viewport2DVisual3D.Material>
            <DiffuseMaterial  Viewport2DVisual3D.IsVisualHostMaterial="True" Brush="White"/>
        </Viewport2DVisual3D.Material>

        <Grid x:Name="grdHolder1" VerticalAlignment="Center" HorizontalAlignment="Center" ClipToBounds="False" Opacity="1" />

    </Viewport2DVisual3D>

WPF フォームで 3d を使用しています。私のフォームはユーザーコントロールです。実行時に、usercontrol のインスタンスを作成し、ビューポートの grdHolder1 に追加するだけです。ただし、コンボボックスのアイテムはコンボボックスに比例しません。比例させる方法は?

誰!!!!?

4

1 に答える 1

1

あなたが直面している問題は、コンボボックスが基本的に別のウィンドウであるポップアップを使用していることです。

Popupは、画面上の独自のウィンドウにコンテンツを表示します。

ポップアップ ウィンドウ内のコントロールとメイン コンボ ボックスに変換を適用する必要があると思います。

MSDN のコンボ ボックス スタイル ページを見ると、スタイルを変更できる PART_Popup があるはずです。ただし、そのページのポップアップ定義に x:Name の定義がないように見えるため、Expression Blend でコピーを編集してスタイルをチェックし、一致することを確認します。

MSDNのコンボボックススタイルページから抜粋して ……

于 2012-09-25T10:07:25.077 に答える