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。我的表单是用户控件。在运行时,我只是创建用户控件的实例并添加到视口中的 grdHolder1。但是组合框项目与组合框不成比例。如何使其成比例?

任何人!!!!?

4

1 回答 1

1

您面临的问题是组合框使用Popup基本上是另一个窗口。

弹出窗口在屏幕上自己的窗口中显示其内容。

我相信这将需要将您的转换应用于弹出窗口内的控件以及主组合框。

如果您查看MSDN 上的组合框样式页面,那么它应该有一个您可以重新设置样式的 PART_Popup。但是,该页面上的弹出定义中似乎缺少 x:Name 定义,因此我将通过在 Expression Blend 上编辑副本来检查样式以确保它匹配。

从MSDN 上的 Combo box 样式页面中提取 ... ...

于 2012-09-25T10:07:25.077 回答