当前位置: 首页>>代码示例>>C#>>正文


C# ITransformProvider.Move方法代码示例

本文整理汇总了C#中System.Windows.Automation.Provider.ITransformProvider.Move方法的典型用法代码示例。如果您正苦于以下问题:C# ITransformProvider.Move方法的具体用法?C# ITransformProvider.Move怎么用?C# ITransformProvider.Move使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。


在下文中一共展示了ITransformProvider.Move方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: if

/// <summary>
/// Moves the provider to the specified position.
/// </summary>
/// <param name="x">The specified X screen coordinate.</param>
/// <param name="y">The specified Y screen coordinate</param>
void ITransformProvider.Move(double x, double y)
{
    int leftInt = (int)x;
    int topInt = (int)y;

    if (!((ITransformProvider)this).CanMove)
        throw new InvalidOperationException(
            "Operation cannot be performed.");

    // Move should never be allowed to place a control outside the 
    // bounds of its container; the control should always be accessible 
    // using the keyboard or mouse.
    // Use the bounds of the parent window to limit the placement 
    // of the custom control.
    int maxLeft = 10;
    int maxTop = 10;
    int maxRight = 
        this.customControl.formWidth - this.customControl.Width - 10;
    int maxBottom = 
        this.customControl.formHeight - this.customControl.Height - 10;

    if (leftInt < maxLeft)
        leftInt = 0;
    if (topInt < maxTop)
        topInt = 0;
    if (leftInt > maxRight)
        leftInt = maxRight;
    if (topInt > maxBottom)
        topInt = maxBottom;

    // Invoke control method on separate thread to avoid clashing with UI.
    // Use anonymous method for simplicity.
    this.customControl.Invoke(new MethodInvoker(delegate()
    {
        this.customControl.Left = leftInt;
        this.customControl.Top = topInt;
    }));
}
开发者ID:.NET开发者,项目名称:System.Windows.Automation.Provider,代码行数:43,代码来源:ITransformProvider.Move


注:本文中的System.Windows.Automation.Provider.ITransformProvider.Move方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。