扩展WPF工具包的WindowContainer
和ChildWindow
都具有XAML中的Left
和Top
属性,但是后面的代码中这两个属性均不可用。
如果未公开这些属性,如何从代码中更改WindowContainer
或ChildWindow
的位置?
private void VerifyWindowSize(Xceed.Wpf.Toolkit.Primitives.WindowContainer wc)
{
if (wc == null) return;
if (wc.Width > screen.WorkingArea.Width)
{
wc.Width = screen.WorkingArea.Width;
//wc.Left = screen.WorkingArea.Left; // Cannot resolve symbol Left
}
if (!(wc.Height > screen.WorkingArea.Height)) return;
wc.Height = screen.WorkingArea.Height;
//wc.Top = screen.WorkingArea.Top;
}
答案 0 :(得分:1)
WindowContainer是Canvas,因此它自己的Left
和Top
依赖项属性是attached。它们不是针对WindowContainer
本身,而是针对其子级。
例如,如果要为Left
的子级设置Canvas
的附加属性,则可以使用相关方法SetLeft。
另一方面,ChildWindow控件具有自己的Left和Top属性,它们没有附加 ,您可以在代码中使用它们而无需有问题。
希望它能对您有所帮助。