GObject 的root 获取的对象有误
public GRoot root
{
get
{
GObject p = this;
//这里遍历了最顶层,导致如果我在GRoot.inst下面添加了自己创建GRoot会返回错误
while (p.parent != null)
p = p.parent;
if (p is GRoot)
return (GRoot)p;
if (p.displayObject != null && p.displayObject.parent != null)
{
DisplayObject d = p.displayObject.parent.GetChild("GRoot");
if (d != null && (d.gOwner is GRoot))
return (GRoot)d.gOwner;
}
return GRoot.inst;
}
}
GRoot gRoot = new GRoot();
GRoot.inst.AddChild(gRoot);
Window window = new Window();
window.ShowOn(gRoot );
window.Hide();//这里会导致关闭不了,因为获取root的时候,拿到的是GRoot.inst而不是gRoot
没有找到相关结果
已邀请:
1 个回复
谷主
赞同来自: