在C#中获取动态创建按钮的文本?

时间:2012-04-23 20:58:10

标签: c#

我使用此逻辑

在C#中动态创建按钮
for (int i = 1; i <= vap; ++i)
{
    newButtons[i] = new Button();
    newButtons[i].BackColor = Color.Gray;
    newButtons[i].Name = "Button4" + i.ToString();
    newButtons[i].Click += new EventHandler(NewButtons_Click);

    newButtons[i].Location = new System.Drawing.Point(width,height);
    newButtons[i].Size = new System.Drawing.Size(76, 38);

    tabPage5.Controls.Add(newButtons[i]);
}

这是创建一个按钮,点击事件也有效但我的问题是我不知道如何获取新创建的按钮的文本。在表单加载时,我正在从数据库中放入按钮文本,这也正确发生,但我想知道如何获取动态创建按钮的文本。

3 个答案:

答案 0 :(得分:4)

在您从数据库填充文本之前,您将无法获取文本(注意不要过早地尝试获取文本)。

但这应该有效:

string buttonText = FindControl("Button41").Text;

<强>更新

由于您需要click事件中的按钮文本,因此您可以访问发件人对象:

Button button = sender as Button;
string buttonText = button.Text;

答案 1 :(得分:0)

添加按钮时,只需设置按钮的Text属性即可。

答案 2 :(得分:0)

使用类似......

的内容

string BtnTxt = FindControl(“ExampleButton1”)。Text;

应该可以正常工作。

如果您尝试以随机顺序提取按钮的文本内容,这可能会在以后出现问题。