我使用以下代码:
<ListBox
x:Name="lbItems"
Grid.Row="1"
Margin="2">
<ListBox.Template>
<ControlTemplate>
<Border
Background="{StaticResource DarkerBrush}"
Width="{Binding Path=ActualWidth, RelativeSource={RelativeSource AncestorType={x:Type ListBox}, Mode=FindAncestor}}"
BorderBrush="{StaticResource MediumBrush}"
BorderThickness="0"
CornerRadius="4">
<ItemsPresenter />
</Border>
</ControlTemplate>
</ListBox.Template>
</ListBox>
它可以工作,但我在输出窗口中看到了一个我要删除的异常。
System.Windows.Data信息:10: 无法使用获取值 绑定并没有有效的回退值 存在;使用默认值。 BindingExpression:路径= ActualWidth的; 的DataItem = NULL;目标元素是 'Border'(Name ='');目标属性是 '宽度'(类型'双')
可能我做的事情不是很完美,所以你有什么想法我如何改进我的代码?
答案 0 :(得分:2)
Width="{Binding ElementName=lbItems, Path=ActualWidth}" ?