【问题标题】:What's the equivalent in C# of this VB code on an Outlook form?Outlook 表单上的这个 VB 代码在 C# 中的等价物是什么?
【发布时间】:2011-06-03 02:30:01
【问题描述】:

基本上,我如何链接 Outlook 表单和 C# 后端?在 VB 中,您可以在表单上书写

Sub ButtonName_Click()
    Dim Recipients

    With Item.GetInspector.ModifiedFormPages("Message")
        Set Recipients = .Controls("To")
    End With
End Sub

只要单击表单上名为“ButtonName”的按钮就会触发,并将变量 Recipients 设置为 To 文本框中的字符串。

现在我有一个自定义表单,我有一个 VS C# Outlook 插件,它们是两个不同的东西。我有一个可以捕获MailItem 对象的事件处理程序,但我不知道如何处理自定义表单按钮点击,甚至不知道如何访问表单上的元素。

编辑 - 澄清一下,自定义表单是在 Outlook 中创建的,然后将其 .ofs 导入 VS。 Outlook 和 VS 都是 2010 年的。此后我在 VS 中重新设计了表单。

【问题讨论】:

    标签: c# vba outlook-addin


    【解决方案1】:
    1. 双击表单上的按钮Name。这将为默认事件生成一个处理程序,在这种情况下恰好是“单击”。它将生成一个名为 buttonName_Click 的方法。
    2. string 类型的类中声明recipientsprivate string recipients
    3. buttonName_Click 中酌情分配给recipients

    为了确切知道要在处理程序中编写什么代码,我需要知道这是什么类型的插件。很可能,C# 代码如下所示:

    recipients = this.Item.GetInspector().ModifiedFormPages["Message"].Controls["To"];
    

    【讨论】:

    • 在 Outlook 中设计表单,然后将 .ofs 导入 VS。我似乎无法在 VS 中打开表单进行可视化编辑。
    • 我已经重新设计了 VS 中的表单,并接受了这个作为答案。
    猜你喜欢
    • 2013-09-06
    • 1970-01-01
    • 1970-01-01
    • 2021-06-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-01-26
    • 2019-02-12
    相关资源
    最近更新 更多