首页 > 解决方案 > 为什么尝试向面板添加标签时此代码不起作用

问题描述

屏幕截图显示了我的部分代码,我得到错误不能用作方法,我不知道如何修复它。我想为为日历创建的面板添加标签。任何帮助将不胜感激。

public partial class frmDisplayAppointment : Form
{
    public frmDisplayAppointment()
    {
        InitializeComponent();
    }

    private List<FlowLayoutPanel> listFlDay = new List<FlowLayoutPanel>();

    private void DisplayAppointment_Load(object sender, EventArgs e)
    {
        GenerateDayPanel(42);
        AddLabelDayToFlDay(1);
    }

    private void GenerateDayPanel(int totalDays)
    {
        flDays.Controls.Clear();

        for (int i = 1; i <= totalDays; i++)
        {
            FlowLayoutPanel fl = new FlowLayoutPanel();
            fl.Name = $"flDay{i}";
            fl.Size = new Size(94, 70);
            fl.BackColor = Color.White;
            fl.BorderStyle = BorderStyle.FixedSingle;
            flDays.Controls.Add(fl);
            listFlDay.Add(fl);
        }
    }

    private void AddLabelDayToFlDay(int startDay)
    {
        int day = 1;

        for (int i = startDay; i <= listFlDay.Count - 1; i++)
        {
            Label lbl = new Label();
            lbl.Name = $"lblDay{i}";
            lbl.AutoSize = false;
            lbl.TextAlign = ContentAlignment.MiddleRight;
            lbl.Size = new Size(95, 23);

            lbl.Text = day.ToString() ;
            
            //ERROR HERE
            listFlDay(i).Controls.Add(lbl);

            day += 1;
        }
    }

非常感谢

标签: c#labelpanel

解决方案


推荐阅读