我想绑定到我的ListBox的视口宽度。也就是说,内容区域的宽度,不包括边框或滚动条:
或者,我可以用一些东西来告诉我垂直滚动条当前是否可见。
这是针对将在列表框之外的控件 - 我想将它放在列表框的视口上方,并确保它始终与视口的宽度相同。即,我想将其宽度绑定到ListBox的视口宽度。
答案 0 :(得分:3)
您想要做的是非常特定于ListBox
控件模板的内部。在代码隐藏中,您可以轻松找到ScrollViewer
,然后您可以使用这些有用的属性:
控制目标控件的宽度。但是这种紧密耦合是复合控件的特征,如果您覆盖ListBox
控件模板并在开头包含目标控件,您会发现您可以完全访问ScrollViewer
及其有用的属性从XAML开始,您可以将宽度与绑定相关联,而不会出现试图维护独立控件的所有问题。
答案 1 :(得分:0)
您可以使用“binding Path = Width,ElementName = abc”。
如果您只想将控件停靠在另一个控件的顶部,您也可以使用Grid