我试图更改组合框的边框 - 一个看似简单的任务,但是没有发生任何事情。无法更改属性
编辑:
这是我的代码:
中出现以下事件:
cmb.BorderThickness = new Thickness(3);
cmb.BorderBrush = Brushes.Green;
这是XAML:
<UserControl x:Class="QueryBuilder.FilterWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
mc:Ignorable="d" MaxHeight="200" Background="White" PreviewMouseLeftButtonDown="UserControl_PreviewMouseLeftButtonDown">
<UserControl.Resources>
<Style TargetType="TextBox">
<Setter Property="VerticalAlignment" Value="Center"/>
<Setter Property="BorderBrush" Value="Silver"/>
<Setter Property="BorderThickness" Value="1"/>
<Setter Property="SnapsToDevicePixels" Value="True"/>
<Setter Property="OverridesDefaultStyle" Value="True"/>
<Setter Property="FocusVisualStyle" Value="{x:Null}"/>
<Setter Property="AllowDrop" Value="true"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type TextBoxBase}">
<Border Name="Border" Padding="1" Background="#FFFFFF" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" >
<ScrollViewer Margin="0" x:Name="PART_ContentHost"/>
</Border>
<ControlTemplate.Triggers>
<Trigger Property="IsEnabled" Value="False">
<Setter TargetName="Border" Property="Background" Value="#EEEEEE"/>
<Setter TargetName="Border" Property="BorderBrush" Value="#EEEEEE"/>
<Setter Property="Foreground" Value="#888888"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<Style TargetType="TreeViewItem">
<Setter Property="Template" Value="{StaticResource TreeViewWithLines}"/>
<Setter Property="Padding" Value="0,5,0,5"/>
<Setter Property="IsExpanded" Value="true"/>
</Style>
</UserControl.Resources>
<ScrollViewer ScrollViewer.HorizontalScrollBarVisibility="Auto" ScrollViewer.VerticalScrollBarVisibility="Auto">
<TreeView Name="tvFilters" Margin="0,10,0,10" Background="White" BorderBrush="White"/>
</ScrollViewer>
</UserControl>
我使用ComboBox的默认controltemplate,所以我不知道为什么它不起作用。有任何想法吗?
不要操纵代码UI元素。 – 2013-03-19 19:25:40
您是否设置了“BorderThickness”? – Dom 2013-03-19 19:26:09
你在Windows 8上吗?我似乎记得在其他控件(如“ToggleButton”)在Windows 8上呈现的方式存在一些错误。我刚刚尝试了Dom在Windows 8计算机上发布的解决方案,而“BorderThickness”更改了“BorderBrush '不。 – 2013-03-19 19:37:28