本文整理汇总了C#中Eto.Forms.Control.OnPreLoad方法的典型用法代码示例。如果您正苦于以下问题:C# Control.OnPreLoad方法的具体用法?C# Control.OnPreLoad怎么用?C# Control.OnPreLoad使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Eto.Forms.Control
的用法示例。
在下文中一共展示了Control.OnPreLoad方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Add
public void Add (Control control, int x, int y)
{
controls.Add (control);
control.SetParentLayout (this);
var load = Loaded && !control.Loaded;
if (load) {
control.OnPreLoad (EventArgs.Empty);
control.OnLoad (EventArgs.Empty);
}
inner.Add (control, x, y);
if (load)
control.OnLoadComplete (EventArgs.Empty);
}
示例2: Add
public void Add(Control control, int x, int y)
{
RemoveParent(control, false);
control.Properties[LocationProperty] = new Point(x, y);
controls.Add(control);
var load = Loaded && !control.Loaded;
if (load)
{
control.OnPreLoad(EventArgs.Empty);
control.OnLoad(EventArgs.Empty);
}
SetParent(control);
Handler.Add(control, x, y);
if (load)
control.OnLoadComplete(EventArgs.Empty);
}
示例3: Add
public void Add(Control control, int x, int y)
{
controls [x, y] = control;
bool load = Loaded;
if (control != null) {
control.SetParentLayout (this);
load &= !control.Loaded;
if (load) {
control.OnPreLoad (EventArgs.Empty);
control.OnLoad (EventArgs.Empty);
}
}
inner.Add (control, x, y);
if (control != null && load)
control.OnLoadComplete (EventArgs.Empty);
}
示例4: SetParent
/// <summary>
/// Sets the parent of the specified <paramref name="child"/> to this container
/// </summary>
/// <remarks>
/// This is used by container authors to set the parent of a child before it is added to the underlying platform control.
///
/// If this returns <c>true</c>, you should call <see cref="Control.OnLoadComplete"/> after the control has been added
/// to the underlying platform control.
/// </remarks>
/// <returns><c>true</c>, if parent was set, <c>false</c> otherwise.</returns>
/// <param name="child">Child to set the parent</param>
protected bool SetParent(Control child)
{
if (child != null && !ReferenceEquals(child.Parent, this))
{
// Detach so parent can remove from controls collection if necessary.
// prevents UnLoad from being called more than once when containers think a control is still a child
// no-op if there is no parent (handled in detach)
child.Detach();
child.Parent = this;
if (Loaded && !child.Loaded)
{
child.OnPreLoad(EventArgs.Empty);
child.OnLoad(EventArgs.Empty);
child.OnDataContextChanged(EventArgs.Empty);
return true;
}
}
return false;
}
示例5: InnerAdd
void InnerAdd(Control control, int x, int y)
{
var old = controls[x, y];
if (old != null)
RemoveParent(old, true);
controls[x, y] = control;
bool load = Loaded;
if (control != null)
{
RemoveParent(control, false);
load &= !control.Loaded;
if (load)
{
control.OnPreLoad(EventArgs.Empty);
control.OnLoad(EventArgs.Empty);
}
SetParent(control);
Handler.Add(control, x, y);
if (load)
control.OnLoadComplete(EventArgs.Empty);
}
else
{
Handler.Add(null, x, y);
}
}