windows8 .net framework 2.0 组件软件时出错了

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了windows8 .net framework 2.0 组件软件时出错了相关的知识,希望对你有一定的参考价值。

windows8怎么安装有需要 .net framework 2.0 组件的软件,例如autocad2012,系统和软件都是64位的。

参考技术A Windows
8
本身就有.net
framework
3.5(含2.0和3.0)。
不知道是不是你的WIN8版本和我的不同,所以默认没开啊?
我的是WIN
8
企业版的。
你可以试试下面的步骤。
1.
打开添加删除应用程序。
2.
在左边有个打开或关闭Windows功能。
3.
进到打开或关闭Windows功能里面第一个就是,我的是英文的,描述是
.NET
Framework
3.5(includes
.NET
2.0
and
3.0)
.NET
Framework
3.5(包含.NET
2.0

3.0)
看看这项有没有打钩或者是一个黑方框?
如果没有勾上,然后点OK,安装上即可。

Grid 控件的 RenderSize 在 Windows 10 [.NET Framework 4.6.2] 和 Windows 7[.NET Framework 4] 中有所不同

【中文标题】Grid 控件的 RenderSize 在 Windows 10 [.NET Framework 4.6.2] 和 Windows 7[.NET Framework 4] 中有所不同【英文标题】:RenderSize of Grid control have difference in Windows 10 [.NET Framework 4.6.2] and Windows 7[.NET Framework 4] 【发布时间】:2018-12-13 11:52:46 【问题描述】:

我有一个自定义组合框样式如下

 <Style x:Key="SmallArrowComboBoxStyle" TargetType="x:Type ComboBox">
    <Setter Property="Foreground" Value="DynamicResource x:Static SystemColors.WindowTextBrushKey"/>
    <Setter Property="Background" Value="#FF1E1E1E"/>
    <Setter Property="BorderBrush" Value="#454545"/>
    <Setter Property="BorderThickness" Value="1"/>
    <Setter Property="FontSize" Value="20"/>
    <Setter Property="FontFamily"                     Value="Segoe UI,Meiryo UI" />
    <Setter Property="Background"                     Value="#1C1C1C" />
    <Setter Property="Foreground"                     Value="#FFFFFF" />
    <Setter Property="Template">
        <Setter.Value>
            <ControlTemplate TargetType="x:Type ComboBox">
                <Grid x:Name="MainGrid1" SnapsToDevicePixels="true" Margin="1">
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition Width="*"/>
                        <ColumnDefinition MinWidth="DynamicResource x:Static SystemParameters.VerticalScrollBarWidthKey" Width="0"/>
                    </Grid.ColumnDefinitions>
                    <Popup x:Name="PART_Popup1" AllowsTransparency="true" Grid.ColumnSpan="2" IsOpen="Binding IsDropDownOpen, RelativeSource=RelativeSource TemplatedParent" Margin="1,0,1,1" Placement="Bottom" >
                        <Border x:Name="Shdw1" BorderBrush ="#FF4289C4" Background="#FF4289C4" BorderThickness="1" MaxHeight="TemplateBinding MaxDropDownHeight" MinWidth="Binding ActualWidth, ElementName=MainGrid1">
                            <Border x:Name="DropDownBorder" BorderThickness="0" Background="#1E1E1E">
                              <Grid>
                                <ScrollViewer x:Name="DropDownScrollViewer1" Template="DynamicResource ScrollViewerControlTemplate1">
                                    <Grid RenderOptions.ClearTypeHint="Enabled">
                                        <Canvas HorizontalAlignment="Left" Height="0" VerticalAlignment="Top" Width="0">
                                            <Rectangle x:Name="OpaqueRect1" Fill="Binding Background, ElementName=DropDownBorder"
                                                       Height="Binding ActualHeight, ElementName=DropDownBorder" Width="Binding ActualWidth, ElementName=DropDownBorder"/>
                                        </Canvas>
                                        <ItemsPresenter x:Name="ItemsPresenter1" KeyboardNavigation.DirectionalNavigation="Contained" SnapsToDevicePixels="TemplateBinding SnapsToDevicePixels"/>
                                    </Grid>
                                </ScrollViewer>
                                <Slider x:Name="CustomSliderVertical" Margin="0,0,-12,0" Maximum="100" SmallChange="1" LargeChange="10" TickPlacement="BottomRight" TickFrequency="10" 
                                    Style="StaticResource CustomSliderStyle" Foreground="DynamicResource LimeBrush" HorizontalAlignment="Right" Delay="1"
                                    Orientation="Vertical" Focusable="False" Grid.Column="0"  Grid.Row="1" Panel.ZIndex="1"/>
                              </Grid>
                            </Border>
                        </Border>
                    </Popup>
                    <ToggleButton BorderBrush="TemplateBinding BorderBrush"
                                  Background="TemplateBinding Background" Grid.ColumnSpan="2"
                                  IsChecked="Binding IsDropDownOpen, Mode=TwoWay, RelativeSource=RelativeSource TemplatedParent" 
                                  Style="StaticResource SmallArrowComboBoxToggleButton" BorderThickness="TemplateBinding BorderThickness"/>
                    <ContentPresenter ContentTemplate="TemplateBinding SelectionBoxItemTemplate" Name="ContentSite"
                                      ContentTemplateSelector="TemplateBinding ItemTemplateSelector" Content="TemplateBinding SelectionBoxItem" 
                                      ContentStringFormat="TemplateBinding SelectionBoxItemStringFormat" 
                                      HorizontalAlignment="TemplateBinding HorizontalContentAlignment" 
                                      IsHitTestVisible="false" Margin="TemplateBinding Padding" 
                                      SnapsToDevicePixels="TemplateBinding SnapsToDevicePixels" VerticalAlignment="TemplateBinding VerticalContentAlignment"/>
                    <TextBox x:Name="PART_EditableTextBoxSmall" Width="150" Height="40"
        Style="x:Null" 
        Template="StaticResource ComboBoxTextBoxSmall" 
        HorizontalAlignment="Left" 
        VerticalAlignment="Center" 
        Margin="3,3,23,3"
        Focusable="True" 
        Background="Transparent"
        Visibility="Hidden"
        IsReadOnly="TemplateBinding IsReadOnly"/>

                </Grid>
                <ControlTemplate.Triggers>
                    <Trigger Property="IsEditable" Value="true">
                        <Setter Property="IsTabStop" Value="false"/>
                        <Setter TargetName="PART_EditableTextBoxSmall" Property="Visibility"    Value="Visible"/>
                        <Setter TargetName="ContentSite" Property="Visibility" Value="Hidden"/>
                        <Setter Property="Foreground" TargetName="PART_EditableTextBoxSmall" Value="#FFFFFF"/>
                    </Trigger>
                </ControlTemplate.Triggers>

            </ControlTemplate>
        </Setter.Value>
    </Setter>
</Style>

我准备了一个带有组合框的测试应用程序,并将这种样式应用于组合框。 使用

准备测试应用程序

.NET Framework 4 和 4.6.2

使用两者测试组合框的外观

Windows-10(.NET Framework 4.6.2) 和 Windows-7(.NET Framework 4)

但 Windows 10 和 Windows 7 之间存在外观差异。

那是组合框文本的对齐方式不同。

即组合框的填充在 Windows 10 和 Windows 7 中是不同的。但是这些填充值没有在代码中明确设置。

在 Windows 7 中,填充值为“4,3,4,3” 在 Windows 10 中,填充值为“6,3,5,3”

检查时发现“MainGrid1”(上述样式代码中的网格布局控件)的RenderSize在Windows 10和Windows 7中有所不同。 从MSDN,RenderSize 是元素的最终渲染大小。

我的疑问是为什么这个RenderSize 在 Windows 10 和 Windows 7 中有不同的值?

【问题讨论】:

【参考方案1】:

Windows 10 和 Windows 7 对 WPF 控件使用不同的默认主题。除非您覆盖默认模板和/或更改必要的属性,否则按钮和组合框之类的东西看起来会略有不同。您还可以使用 Expression blend 来“转储”默认模板以查看详细信息。

如果您在 *** 上进行一些搜索,还有许多其他关于主题的问题。 IE: where-to-find-wpf-classic-theme-as-xaml

【讨论】:

我在.NET Framework 4(使用Blend 2012)和4.6.2(使用Blend 2017)中检查了组合框的默认控件模板。据观察,某些属性值(如 BorderThickness 和 Padding 等)存在一些差异。知道为什么会有这种差异吗?更改 .NET Frame 工作时是否更新了控件模板?

以上是关于windows8 .net framework 2.0 组件软件时出错了的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 WiX Burn 在 Windows 8 和 Windows Server 2012 上安装 .NET Framework 3.5?

.net framework 4.6 无法安装

将 UWP 库加载到 .NET Framework 应用程序中

.NET Framework 4 桌面应用程序 [C#] 将运行 Windows 8、8.1 和 10

.NETCore(Windows 8 Framework)的“GetCustomAttributes”的等效方法是啥?

如果我有 .NET Framework 2.0 和 .NET Framework 3.5,是不是需要 .NET Framework 3?