- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个使用自定义窗口控件的程序。在 VS2013 中,窗口在设计 View 中呈现良好,在 VS2015 中打开的解决方案完全相同。编译并在运行时正常工作。
相关代码的片段在这里:
<control:CustomWindow x:Class="CategoryView"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:control="clr-namespace:ClassAccounts;assembly=ClassAccounts"
xmlns:l="clr-namespace:WpfAccounts"
Title="Category" Width="470" Height="485" WindowStartupLocation="CenterScreen" OKVisibility="True">
<Window.Resources>
<CollectionViewSource Source="{Binding Categories}" x:Key="Categories"/>
<CollectionViewSource Source="{Binding Headings}" x:Key="Headings"/>
<DataTemplate x:Key="CategoryTemplate">
<TextBlock Text="{Binding comment}" Margin="0" Foreground="{Binding forecolor}"/>
</DataTemplate>
</Window.Resources>
<Grid>
...
</Grid>
<Application x:Class="Application"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:l="clr-namespace:WpfAccounts"
StartupUri="MainWindow.xaml">
<Application.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="pack://application:,,,/ClassAccounts;component/Themes/Generic.xaml"/>
</ResourceDictionary.MergedDictionaries>
<!-- Region SubMenu -->
<MenuScrollingVisibilityConverter x:Key="MenuScrollingVisibilityConverter"/>
<!-- Separator -->
<Style TargetType="{x:Type Separator}" x:Key="SeparatorStyle">
<Setter Property="Height" Value="1"/>
<Setter Property="Background" Value="{StaticResource CustomDarkBlue}"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type Separator}">
<Rectangle Height="{TemplateBinding Height}" Fill="{StaticResource CustomWhite}"/>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
...
<!-- End Region -->
</ResourceDictionary>
</Application.Resources>
Imports System
Imports System.Reflection
Imports System.Runtime.InteropServices
Imports System.Globalization
Imports System.Resources
Imports System.Windows
' General Information about an assembly is controlled through the following
' set of attributes. Change these attribute values to modify the information
' associated with an assembly.
' Review the values of the assembly attributes
<Assembly: AssemblyTitle("Accounts")>
<Assembly: AssemblyDescription("Account Program")>
<Assembly: AssemblyCompany("")>
<Assembly: AssemblyProduct("Accounts")>
<Assembly: AssemblyCopyRight("Copyright © 2013-4 Andrew Powell")>
<Assembly: AssemblyTrademark("")>
<Assembly: ComVisible(False)>
'In order to begin building localizable applications, set
'<UICulture>CultureYouAreCodingWith</UICulture> in your .vbproj file
'inside a <PropertyGroup>. For example, if you are using US english
'in your source files, set the <UICulture> to "en-US". Then uncomment the
'NeutralResourceLanguage attribute below. Update the "en-US" in the line
'below to match the UICulture setting in the project file.
'<Assembly: NeutralResourcesLanguage("en-US", UltimateResourceFallbackLocation.Satellite)>
'The ThemeInfo attribute describes where any theme specific and generic resource dictionaries can be found.
'1st parameter: where theme specific resource dictionaries are located
'(used if a resource is not found in the page,
' or application resource dictionaries)
'2nd parameter: where the generic resource dictionary is located
'(used if a resource is not found in the page,
'app, and any theme specific resource dictionaries)
<Assembly: ThemeInfo(ResourceDictionaryLocation.None, ResourceDictionaryLocation.SourceAssembly)>
'The following GUID is for the ID of the typelib if this project is exposed to COM
<Assembly: Guid("c7920515-ec57-40d4-bccb-8f5b16be77d0")>
' Version information for an assembly consists of the following four values:
'
' Major Version
' Minor Version
' Build Number
' Revision
'
' You can specify all the values or you can default the Build and Revision Numbers
' by using the '*' as shown below:
' <Assembly: AssemblyVersion("1.0.*")>
<Assembly: AssemblyVersion("1.0.0.0")>
<Assembly: AssemblyFileVersion("1.0.0.0")>
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:ClassAccounts">
<!-- Region Colours -->
<!-- Control colors -->
<SolidColorBrush x:Key="CustomWhite" Color="White"/>
<SolidColorBrush x:Key="CustomDarkBlue" Color="#8DA3C1"/>
<SolidColorBrush x:Key="CustomGray" Color="LightGray"/>
<SolidColorBrush x:Key="CustomDarkHighlight" Color="#5082A4"/>
<!-- Submenu item highlight -->
<SolidColorBrush x:Key="CustomLightHighlight" Color="#3399FF"/>
<!-- TreeviewItem highlight -->
<Color x:Key="CustomLightHighlightC" A="#FF" R="#33" G="#99" B="#FF"/>
<SolidColorBrush x:Key="CustomBackground" Color="#B5CBEF"/>
<Color x:Key="CustomBackgroundC" A="#FF" R="#B5" G="#CB" B="#EF"/>
<SolidColorBrush x:Key="CustomHighlightedControlGlyph" Color="#3C7FB1"/>
<SolidColorBrush x:Key="CustomHighlightedControlBorder" Color="#222"/>
<SolidColorBrush x:Key="CustomPressedControlGlyph" Color="#003366"/>
<SolidColorBrush x:Key="CustomPressedControlBorder" Color="#526C7B"/>
<SolidColorBrush x:Key="CustomPressedControlBackground" Color="#595959"/>
<SolidColorBrush x:Key="CustomGlyph" Color="#444"/>
<!-- Window Colors -->
<SolidColorBrush x:Key="CustomWindowBorder" Color="#395984"/>
<SolidColorBrush x:Key="CustomHeaderLight" Color="#E7EBF7"/>
<Color x:Key="CustomHeaderLightC" A="#FF" R="#E7" G="#EB" B="#F7"/>
<SolidColorBrush x:Key="CustomHeaderDark" Color="#CEE3FF"/>
<Color x:Key="CustomHeaderDarkC" A="#FF" R="#CE" G="#E3" B="#FF"/>
<SolidColorBrush x:Key="CustomControl" Color="Gray"/>
<!-- End Region -->
<!-- Region Window -->
<!-- Window Button style -->
<Style TargetType="{x:Type Button}" x:Key="WindowButtonStyle">
<Setter Property="Background" Value="Transparent"/>
<Setter Property="FontFamily" Value="Webdings"/>
<Setter Property="FontSize" Value="16"/>
<Setter Property="Foreground" Value="{StaticResource CustomControl}"/>
<Setter Property="Margin" Value="0"/>
<Setter Property="Padding" Value="0"/>
<Setter Property="HorizontalAlignment" Value="Center"/>
<Setter Property="VerticalAlignment" Value="Top"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type ButtonBase}">
<Border x:Name="Chrome" BorderBrush="{TemplateBinding BorderBrush}" Margin="0" Padding="0" Background="{TemplateBinding Background}" SnapsToDevicePixels="True">
<ContentPresenter ContentTemplate="{TemplateBinding ContentTemplate}" Content="{TemplateBinding Content}" ContentStringFormat="{TemplateBinding ContentStringFormat}" HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" Margin="{TemplateBinding Padding}" RecognizesAccessKey="True" SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}"/>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
<Style.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Foreground" Value="Black"/>
</Trigger>
<Trigger Property="IsEnabled" Value="False">
<Setter Property="Foreground" Value="LightGray"/>
</Trigger>
</Style.Triggers>
</Style>
<!-- Window style -->
<Style TargetType="{x:Type local:CustomWindow}" x:Key="{x:Type local:CustomWindow}">
<Setter Property="WindowStyle" Value="None"/>
<Setter Property="ResizeMode" Value="NoResize"/>
<Setter Property="Background" Value="Transparent"/>
<Setter Property="BorderThickness" Value="0"/>
<Setter Property="AllowsTransparency" Value="True"/>
<Setter Property="ShowInTaskbar" Value="True"/>
<Setter Property="Icon" Value="\coins.ico"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type local:CustomWindow}">
<Border Width="Auto" Height="Auto" Name="windowFrame" BorderBrush="{StaticResource CustomWindowBorder}" BorderThickness="1" CornerRadius="0,20,20,20">
<Border.Background>
<LinearGradientBrush>
<GradientBrush.GradientStops>
<GradientStopCollection>
<GradientStop Color="{StaticResource CustomHeaderLightC}" Offset="0.0"></GradientStop>
<GradientStop Color="{StaticResource CustomHeaderDarkC}" Offset="0.25"></GradientStop>
</GradientStopCollection>
</GradientBrush.GradientStops>
</LinearGradientBrush>
</Border.Background>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="*"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<Grid Grid.Row="0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="100"/>
</Grid.ColumnDefinitions>
<TextBlock Grid.Column="0" x:Name="tbTitle" Text="{TemplateBinding Title}" FontSize="14" Margin="0" Padding="4"/>
<StackPanel Grid.Column="1" Orientation="Horizontal" Margin="0,5,15,0" HorizontalAlignment="Right" VerticalAlignment="Top" Background="Transparent">
<Button x:Name="RefreshButton" Content="q" Style="{StaticResource WindowButtonStyle}"/>
<Button x:Name="MinimizeButton" Content="0" Style="{StaticResource WindowButtonStyle}"/>
<Button x:Name="OKButton" Content="a" Style="{StaticResource WindowButtonStyle}" IsDefault="True"/>
<Button x:Name="CloseButton" Content="r" Style="{StaticResource WindowButtonStyle}" IsCancel="True"/>
</StackPanel>
</Grid>
<Grid x:Name="grdMain" Grid.Row="1" Background="{StaticResource CustomBackground}">
<AdornerDecorator>
<ContentPresenter/>
</AdornerDecorator>
</Grid>
<Grid Grid.Row="2">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<StackPanel Grid.Column="0" Orientation="Horizontal" Margin="15,0,0,0" HorizontalAlignment="Left" VerticalAlignment="Top">
<TextBlock x:Name="tbStatusLeft" FontSize="14" Margin="0,0,0,0" Width="150" Padding="2"/>
<TextBlock x:Name="tbStatusLeft2" FontSize="14" Margin="0,0,0,0" Width="150" Padding="2"/>
<TextBlock x:Name="tbStatusLeft3" FontSize="14" Margin="0,0,0,0" Width="150" Padding="2"/>
</StackPanel>
<Canvas x:Name="canStatusMiddle" Grid.Column="1" ClipToBounds="True">
<TextBlock x:Name="tbStatusMiddle" FontSize="14" Margin="0,0,0,0" Padding="2" TextAlignment="Center"/>
</Canvas>
<StackPanel Grid.Column="2" Orientation="Horizontal" Margin="0,0,15,0" HorizontalAlignment="Right" VerticalAlignment="Top">
<TextBlock x:Name="tbStatusRight3" FontSize="14" Margin="0,0,0,0" Width="150" Padding="2" TextAlignment="Right"/>
<TextBlock x:Name="tbStatusRight2" FontSize="14" Margin="0,0,0,0" Width="150" Padding="2" TextAlignment="Right"/>
<TextBlock x:Name="tbStatusRight" FontSize="14" Margin="0,0,0,0" Width="150" Padding="2" TextAlignment="Right"/>
</StackPanel>
</Grid>
</Grid>
</Border>
<ControlTemplate.Triggers>
<Trigger Property="OKVisibility" Value="False">
<Setter TargetName="OKButton" Property="Visibility" Value="Collapsed"/>
</Trigger>
<Trigger Property="RefreshVisibility" Value="False">
<Setter TargetName="RefreshButton" Property="Visibility" Value="Collapsed"/>
</Trigger>
<Trigger Property="ExtraStatus" Value="False">
<Setter TargetName="tbStatusLeft2" Property="Visibility" Value="Collapsed"/>
<Setter TargetName="tbStatusLeft3" Property="Visibility" Value="Collapsed"/>
<Setter TargetName="tbStatusRight2" Property="Visibility" Value="Collapsed"/>
<Setter TargetName="tbStatusRight3" Property="Visibility" Value="Collapsed"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<!-- End Region-->
最佳答案
我发现了一些事情。我在我发布的示例项目中注意到它实际上在 VS2013 中没有正确呈现。 Generic.xaml 中的关键行是这样的:
<Style TargetType="{x:Type local:CustomWindow}" x:Key="{x:Type local:CustomWindow}">
<Style TargetType="{x:Type local:CustomWindow}">
As shown in the first example above, setting the TargetType property to TextBlock without assigning the style with an x:Key allows your style to be applied to all TextBlock elements. What actually happens is that doing so implicitly sets the x:Key to {x:Type TextBlock}. This also means that if you give the Style an x:Key value of anything other than {x:Type TextBlock}, the Style would not be applied to all TextBlock elements automatically. Instead, you need to apply the style to the TextBlock elements explicitly.
<Style TargetType="{x:Type local:CustomWindow}" x:Key="CustomWindow">
<Style="{DynamicResource CustomWindow}">
关于wpf - VS2015 不在设计 View 中呈现自定义窗口控件(适用于 VS2013),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31572510/
我是 Mercurial 的新手,并且不知何故仍处于评估过程中,所以这四个概念对我来说有点困惑。有些被提到等同于 Git 的 Staging/Index 概念,有些甚至比 Git 的 Staging
关闭。这个问题需要更多focused .它目前不接受答案。 想改善这个问题吗?更新问题,使其仅关注一个问题 editing this post . 6 个月前关闭。 Improve this ques
任何人都可以给我详细信息吗? 例如? #ID 是属性、特性、选择器还是 anchor ? 默认属性和默认属性是不同的东西吗? 这些都是标签还是元素? 我们将对此说些什么 这个 ..... 还有这些
关闭。这个问题需要更多focused .它目前不接受答案。 想改进这个问题吗? 更新问题,使其只关注一个问题 editing this post . 关闭 8 年前。 Improve this qu
我有一个由 Javascript 填充的下拉列表。 在决定加载时显示的默认值时,我意识到以下属性显示的值完全相同: innerText innerHTML label text textContent
我可以知道每个 Exec 之间有什么区别吗? , ExecWait , ExecShell , nsExec::Exec , nsExec::ExecToLog, nsExec::ExecToStac
当您处于版本 1 和版本 2 之间时,您会如何维护您的软件? 从我的角度来看,“补丁”、“修补程序”、“维护版本”、“服务包”等术语都很模糊,根据与您交谈的对象不同,定义也不同。 您如何称呼版本之间的
我刚刚发现在 ES6 中有一个新的数学方法:Math.trunc . 我在 MDN article 中阅读了它的描述。 , 听起来像使用 |0 . 此外,>0 , &-1 , ^0也做类似的事情(感谢
我想知道我的 StackPanel 所有项目的高度。 有什么区别: Height - 获取或设置元素的建议高度。 ActualHeight - 获取该元素的渲染高度。 (只读) ExtentHeigh
关闭。这个问题是off-topic .它目前不接受答案。 想改进这个问题吗? Update the question所以它是on-topic用于堆栈溢出。 关闭 9 年前。 Improve this
我对所有声称以某种方式阻止计算的内置 Mathematica 函数感到困惑:Unevaluated、Defer、Hold ,以及超过 6 个 Hold* 形式。 Mathematica 文档只是单独解
我什至不确定正确的术语,所以让我从我的目标开始:拥有一个简单的应用程序(“Data Doler”),它只会将大量数据从文件读取到内存中,然后提供服务将该数据切片到名为“Data Lapper”的单个多
我刚刚开始在我的项目中使用 Elasticsearch,我想像 sql 关键字一样搜索 '喜欢%' 做。 谁能解释一下 之间的区别通配符 , 前缀 , 查询字符串和 正则表达式 ? 哪个可以搜索最好性
由于我对任何主流浏览器(Firefox、Chrome、Opera)都不太满意,而且我尝试过的不太受欢迎的浏览器(近十几种)都没有,所以我决定 DIY 并制作一个网页我想要最好的浏览器。 主要目标是让它
我知道如何使用 Python 解析页面。我的问题是哪种方法是所有解析技术中最快的,其他方法的速度有多快? 我知道的解析技术有Xpath、DOM、BeautifulSoup,还有使用Python的fin
我试图从正在解析的命令行中找出哪个函数最适合将十进制、十六进制或八进制数转换为 int 最好——在不知道输入的情况下事先。 目标是使用一个函数来识别不同类型的输入并将其分配给它的整数 (int) 值,
就目前而言,这个问题不适合我们的问答形式。我们希望答案得到事实、引用资料或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visit the
我们需要在我们的网站上显示酒吧、餐馆和剧院等各种场所的元信息(例如,地址、姓名)。 理想情况下,用户会输入地点名称以及邮政编码,我们会提供最接近的匹配项。 人们将哪些 API 用于类似的地理定位目的?
就目前而言,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引起辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visit the he
我正在创建我的第一个 Web 应用程序,我真的很困惑应该使用什么技术。 我的应用程序需要看起来很严肃(像一个应用程序),它不需要很多色彩缤纷的图形界面。它只需要一个工具栏、一个标签栏、一个拆分面板(最
我是一名优秀的程序员,十分优秀!