我已经扩展了ListBox
控件,并想给它圆角,所以我应用了如下的样式,它运行正常:
<control:MultiSelectionListBox SelectionMode="Extended" ItemsSource="{Binding Offerables,Mode=TwoWay}"
SelectedItemsList="{Binding SelectedOfferables, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" DisplayMemberPath="Name"
Grid.Row="6" Grid.Column="0" MaxHeight="150">
<control:MultiSelectionListBox.Resources>
<Style TargetType="Border">
<Setter Property="CornerRadius" Value="5"></Setter>
</Style>
</control:MultiSelectionListBox.Resources>
</control:MultiSelectionListBox>
但是我有太多的列表框,我不想单独在每个控件中添加样式。
我想在app.xaml中定义此样式,并希望按名称Style = "{StaticResource RoundedListBoxStyle}"
重用该设计。
我在app.xaml中尝试过如下但没有运气
<Style TargetType="ListBox" x:Key="RoundedListBoxStyle">
<Setter Property="Border" Value="10"></Setter>
</Style>
成员
Border
无法识别或无法访问。
请指导我在这里做错了什么。
答案 0 :(得分:1)
最后我设法做到了这一点,因为评论Border
中提到的Bradley Uffner
不是ListBox
的属性,我们不能像这样使用它。我使用了Style.Resource
并提到了Border for Border元素,如下所示:
<Style TargetType="ListBox" x:Key="RoundedListBoxStyle">
<Style.Resources>
<Style TargetType="Border">
<Setter Property="CornerRadius" Value="5"></Setter>
</Style>
</Style.Resources>
</Style>
它有效。 :)