更改名称后,用户控件中的C#访问控制

时间:2014-05-04 15:26:53

标签: c# user-controls

我已经创建了这个小循环来创建多个用户控件。在这些用户控件中是组合框,我想在按下表单中的按钮时更改它,但我不能使用我给它们的名称单独访问它们。 这是我用于用户控件的for循环:

TournBox MatchBox;
        int i;
        int XCoordinate, YCoordinate;
        XCoordinate = 0;
        YCoordinate = 0;
        Teamcount = ((objDataSet2.Tables["dsTeams"].Rows.Count - 1) / 2);
        for (i = 0; Teamcount + 1 > i; i++)
        {
            MatchBox = new TournBox(objDataSet2.Tables["dsTeams"]);
            MatchBox.Name = "TRound" + i.ToString();
            MatchBox.Location = new Point(10 + XCoordinate , 10 + YCoordinate);
            MatchBox.Visible = true;
            this.pnlWinners.Controls.Add(MatchBox);
            foreach (DataRow dr in objDataSet2.Tables["dsTeams"].Rows)
            {
                MatchBox.CboTeam1.Items.Add(dr["Teamnaam"]);
                MatchBox.CboTeam2.Items.Add(dr["TeamNaam"]);
            }
            YCoordinate = YCoordinate + 63;

        }

我试过这个并将usercontrol中的组合框设置为public。:

private void btnTeamList_Click(object sender, EventArgs e)
    {
        TRound1.CboTeam1.Items.Add("el jefe");
    }

抱歉语法错误,英语不是我的母语。

1 个答案:

答案 0 :(得分:0)

您可以从添加它的面板按名称访问它:

this.pnlWinners.Controls["TRound1"]