本文整理汇总了C#中Eto.Forms.Control.OnDataContextChanged方法的典型用法代码示例。如果您正苦于以下问题:C# Control.OnDataContextChanged方法的具体用法?C# Control.OnDataContextChanged怎么用?C# Control.OnDataContextChanged使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Eto.Forms.Control
的用法示例。
在下文中一共展示了Control.OnDataContextChanged方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: 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;
}
示例2: RemoveParent
/// <summary>
/// Removes the specified control from the container.
/// </summary>
/// <remarks>
/// This should only be called on controls that the container owns. Otherwise, call <see cref="Control.Detach"/>
/// </remarks>
/// <param name="child">Child to remove from this container</param>
protected void RemoveParent(Control child)
{
if (child != null && !ReferenceEquals(child.Parent, null))
{
#if DEBUG
if (!ReferenceEquals(child.Parent, this))
throw new EtoException("The child control is not a child of this container. Ensure you only remove children that you own.");
#endif
if (child.Loaded)
{
child.OnUnLoad(EventArgs.Empty);
}
child.Parent = null;
child.OnDataContextChanged(EventArgs.Empty);
}
}