Silverlight AutoCompleteBox 样式?
Posted
技术标签:
【中文标题】Silverlight AutoCompleteBox 样式?【英文标题】:The Silverlight AutoCompleteBox Styles? 【发布时间】:2017-05-23 19:06:03 【问题描述】:我一直在使用 Silverlight AutoCompleteBox Introducing the AutoCompleteBox,现在我希望对其应用一些样式,但我似乎无法让它做我想做的事。
我应用的任何样式只会使其不可见而不会出现错误,并且无法调试 XAML。
我只是想应用一些圆角而没有运气。我该怎么做?
这是迄今为止的 XAML,
<Style TargetType="x:Type controls:AutoCompleteBox">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="x:Type controls:AutoCompleteBox">
<Border Name="border" BorderThickness="0"
Padding="2,2,2,2" CornerRadius="5">
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
【问题讨论】:
这是一个带有空边框的 ControlTemplate。显然它没有显示任何内容。 @Clemens,我怎么看不到它是空的? 它没有显示任何内容的子元素。从这里开始阅读:Customizing the Appearance of an Existing Control by Creating a ControlTemplate。 @Clemens,我现在明白了,再次感谢您的帮助。 【参考方案1】:控件模板定义了控件的(完整)外观,并且您将 AutoCompleteBox 的(整个)默认模板替换为空边框。这就是它不显示的原因。
您可以从 MSDN 复制默认样式/模板,然后根据您的要求进行修改:
AutoCompleteBox 样式和模板: https://msdn.microsoft.com/ru-ru/library/dd728668(v=vs.95).aspx。
请注意,您不能仅“覆盖” ControlTemplate 的一部分。您必须将整个模板定义为一个整体。
【讨论】:
以上是关于Silverlight AutoCompleteBox 样式?的主要内容,如果未能解决你的问题,请参考以下文章