为什么Combobox项目与组合框不成比例?

时间:2012-09-03 15:30:27

标签: wpf 3d

enter image description here

  <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。但组合框项目与组合框不成比例。如何使它成比例?

任何!!!! ?

1 个答案:

答案 0 :(得分:1)

你遇到的问题是组合框使用Popup,这基本上是另一个窗口。

  

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

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

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

摘自Combo box style page on MSDN      ...            ...