将对象从对象数组输出到Windows窗体中的标签

时间:2019-03-01 12:18:17

标签: c# arrays winforms object

我有2个课,座位和电影。座位是我的抽象班。 我在Movie中制作了一组对象Seats[,] users = new Seats[5, 5];。 当用户输入他们的姓名和座位号时,我将填充对象数组,但是我不知道如何再次输出该对象。我尝试使用testLabel.Text = users[i, j].ToString();输出 我的完整按钮代码如下。

public String tempName = "";
        public Int32 tempNum = 0;
        public Boolean tempOccupy = false;

        public Int32 i = 0;
        public Int32 j = 0;

        Seats[,] users = new Seats[5, 5];
        public Bookings()
        {
            InitializeComponent();
        }

private void button1_Click(object sender, EventArgs e)
        {
            tempName = textBox1.Text;
            tempNum = Int32.Parse(textBox2.Text);
            tempOccupy = true;

            Seats p1 = new Seats(tempName, tempNum, tempOccupy);


            while (i != 4 && j != 4)
            {
                if (i == 4)
                {
                    i++;
                    users[i, j] = p1;
                }
                users[i, j] = p1;
                j++;
            }

            testLabel.Text = users[i, j].ToString();

        }

2 个答案:

答案 0 :(得分:0)

覆盖ToString()中的Seats方法

public override string ToString()
{
   return $"{Name} {SeatNumber}";
}

答案 1 :(得分:0)

由于您要将它们全部打印到标签中并且它是一个复杂的对象,因此可以在Seats对象中重写ToString()方法,也可以选择要打印的属性以将它们串联起来:

testLabel.Text = users[i, j].SeatsAttributeName +" "+ users[i, j].SeatsAttributeOccupy;

只需在这里尝试:

https://dotnetfiddle.net/XojUnP