0

我已经搜索了问题的答案,但找不到一个明确的例子。我正在尝试在 C# 中显示一个简单的文本框。我正在使用 C#、ArcMap 和 ArcObjects。我创建了一个工具栏,里面有一个按钮。单击按钮后,我只需要在页面上显示一个文本框。到目前为止,这就是我所拥有的,但是当我点击我的按钮时什么都没有产生。提前感谢您的帮助。

using System;
using System.Collections.Generic;
using System.Text;
using System.IO;
using System.Windows.Forms;

namespace Map
{
    public class ArcGISAddin4 : ESRI.ArcGIS.Desktop.AddIns.Button
    {
        public ArcGISAddin4()
        {
        }

        protected override void OnClick()
        {
            TextBox dynamicTextBox = new TextBox();
            dynamicTextBox.Text = "My First Text Box";
            dynamicTextBox.Name = "First Text Box";
            dynamicTextBox.Enabled = true;
        }

        protected override void OnUpdate()
        {
        }
    }
}
4

2 回答 2

1

您必须将 TextBox 添加到周围的容器(例如窗体)。否则程序将不知道它应该显示在哪里。

于 2014-03-28T19:36:52.627 回答
1

您应该添加dynamicTextBox到特定容器,例如表单。比如这样:

 TextBox dynamicTextBox = new TextBox();
 dynamicTextBox.Text = "My First Text Box";
 dynamicTextBox.Name = "First Text Box";
 dynamicTextBox.Enabled = true;
 this.Contols.Add(dynamicTextBox);//this is a pseudo code
于 2014-03-28T19:40:18.077 回答