1
我正在为自定义控件实现ISrollInfo接口。简而言之,我在Canvas下的自定义控件中有一个标签。当我的自定义控件滚动时,我希望标签“保持原位”。也就是说,无论滚动偏移量如何,标签都必须始终可见。现在WPF IScrollInfo标签的固定位置
,作为一个测试,我添加了这个示例代码
protected override Size MeasureOverride(Size constraint)
{
return new Size(1000, 50);
}
protected override Size ArrangeOverride(Size arrangeBounds)
{
double x = 50;
double y = 50;
label1.Arrange(new Rect(new Point(x, y), new Size(1000, 50)));
return arrangeBounds;
}
当我测试控制(我的控制放在一个ScrollViewer中内),标签是隐藏的(之前和之后我使用滚动条) 。如果我删除了ArrangeOverride的覆盖,则标签出现并在我使用滚动条时滚动。
任何想法我缺少什么?
找到它了,我的ArrangeOverride位于UserControl上,我专门只安排标签,画布未排列(即未设置位置和大小)。现在,由于标签在画布中,因此您无法看到它。 – States