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