【问题标题】:Adding a collapsible panel in outlook在 Outlook 中添加可折叠面板
【发布时间】:2013-02-26 07:46:00
【问题描述】:

我正在编写一个 Outlook 插件,并且正在寻找一种方法来使停靠在我屏幕右侧的面板可折叠。目前面板显示或移除。你也可以缩放它,但这不是我想要的。我已经尝试添加 2 个按钮来更改我的面板 onclick 的宽度,但结果是我的面板的宽度不能小于大约 60px,并且标题仍然存在。这是我用来添加窗格的代码:

 Microsoft.Office.Tools.CustomTaskPane ctp;
 private HistoryPane ctrl;
 string title = "Task History";
 ctrl = new HistoryPane(mailItem);
 ctp = Globals.ThisAddIn.CustomTaskPanes.Add(ctrl, title);
 ctp.Visible = true;
 ctp.Width = 460;
 ctp.DockPosition = Microsoft.Office.Core.MsoCTPDockPosition.msoCTPDockPositionRight;

任何关于删除标题、使面板更薄(约 25 像素)、使其可折叠或所有这些方面的帮助将不胜感激。

【问题讨论】:

    标签: c# winforms panel outlook-addin customtaskpane


    【解决方案1】:

    下面是解决方案:

    1 - 在您的用户控件中创建一个公共方法,如下所示:

    私有 Microsoft.Office.Tools.CustomTaskPane _ctp; 公共无效 SetControl(参考 Microsoft.Office.Tools.CustomTaskPane ctp) { _ctp = ctp; }

    2 - 在您的用户控件中添加任何按钮以展开和最小化,并在点击事件的最小化按钮上放置以下代码:

    私人无效btnMinimize_Click(对象发送者,EventArgs e) { _ctp.DockPosition = Microsoft.Office.Core.MsoCTPDockPosition.msoCTPDockPositionTop; _ctp.Height = 50; }

    3 - 在上面的代码之后使用下面的粗体代码:

    Microsoft.Office.Tools.CustomTaskPane ctp;
    private HistoryPane ctrl;
    string title = "Task History";
    ctrl = new HistoryPane(mailItem);
    ctp = Globals.ThisAddIn.CustomTaskPanes.Add(ctrl, title);
    ctp.Visible = true;
    ctp.Width = 460;
    ctp.DockPosition = Microsoft.Office.Core.MsoCTPDockPosition.msoCTPDockPositionRight;
    
    ctrl.SetControl(ref ctp);
    

    希望这会奏效。

    【讨论】:

    • 这只是为我提供了一种添加面板的不同方式,但不是让宽度变为 25px 或更低的方式。还有一个最小宽度
    猜你喜欢
    • 1970-01-01
    • 2015-11-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-16
    • 2019-04-28
    相关资源
    最近更新 更多