显示文本框

时间:2014-03-28 19:35:14

标签: c# textbox arcmap arcobjects

我已经搜索了问题以寻找答案,但却找不到明确的例子。我试图在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()
        {
        }
    }
}

2 个答案:

答案 0 :(得分:1)

您必须将TextBox添加到周围的容器(例如表单)。否则程序将无法知道它应该显示在何处。

答案 1 :(得分: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