zoukankan      html  css  js  c++  java
  • 控件设计时的属性页定位办法

    控件设计时的属性页定位办法:
    取得IHtmlDocument3 就随心所欲了。

    public LabelComponentEditorForm(ComponentEditorLabel designComponent)
            
    {
                
    this.designComponent = designComponent;
                
                
    int innerLeft = Convert.ToInt32(designComponent.Style["clientX"]);
                
    int innerTop = Convert.ToInt32(designComponent.Style["clientY"]);

                IDesignerHost host 
    = (IDesignerHost) designComponent.Site.GetService(typeof (IDesignerHost));
                ControlDesigner labelDesigner 
    = (ControlDesigner) host.GetDesigner(designComponent);
                
    object parent = labelDesigner.Behavior.GetAttribute("document"false);
                IHTMLDocument2 doc 
    = (IHTMLDocument2) parent;
                mshtml.IHTMLWindow3 window 
    = (IHTMLWindow3) doc.parentWindow;
                
    int screenLeft = window.screenLeft;
                
    int screenTop = window.screenTop;
                
                
    this.Location = new Point(screenLeft + innerLeft, screenTop + innerTop);

                
    //
                
    // Windows 窗体设计器支持所必需的
                
    //
                InitializeComponent();

                
    //
                
    // TODO: 在 InitializeComponent 调用后添加任何构造函数代码
                
    //
            }

    效果如下:
  • 相关阅读:
    系统吞吐量、TPS(QPS)、用户并发量、性能测试概念和公式[转]
    EF RepositoryBase 参考示例【转】
    Entity Framework 杂碎
    Oracle.ManagedDataAccessDTC.dll 使用
    c# http请求,获取非200时的响应体
    c# windows service(服务)
    git log
    解决冲突
    clone命令
    remote指令添加远程数据库
  • 原文地址:https://www.cnblogs.com/xiaotaoliang/p/385951.html
Copyright © 2011-2022 走看看