乘以并显示现有控件 C#

我已经在 Visual C#设计中创建了一个面板到我的表单中,现在我想显示与我拥有的数据库表中的注册一样多的面板。我有这个脚本,但结果是:


        User login_user = new User();

        login_user.SelectThisMember();

        lblHello.Text = "Hello, " + login_user.username + " !";

        Booking user_bookings = new Booking();

        Booking[] user_bookings_list;

        user_bookings_list = user_bookings.MyBookings();

        lblTest.Text = user_bookings_list.Length.ToString();


        Panel[] panelBookingList = new Panel[user_bookings_list.Length];

        for (int i = 0; i < user_bookings_list.Length; i++)

        {

            panelBookingList[i] = panelBooking;

        }


        for (int i=0; i< panelBookingList.Length; i++)

        {


            panelBookingList[i].Location = new Point(193, 128+128);

            this.Controls.Add(panelBookingList[i]);


        }

http://img1.mukewang.com/60e9017b000154ff13750754.jpg

带有“ 3 ”的标签表示我在数据库中的行数。另外,当我按下表中用于该注册的删除按钮时,我该怎么做才能知道?


达令说
浏览 146回答 1
1回答

湖上湖

如果我没记错的话,您不会更新面板的位置。panelBookingList[i].Location = new Point(193, 128+128);位置应取决于您的变量“i”最好的方法是使用堆栈面板,只需将面板转储到其中,而无需设置它们的位置。这样,如果您更改面板的布局,您就不必进一步编辑代码来考虑面板的新高度。堆栈面板只是一个接一个地放置控件。否则,您需要对面板的高度进行硬编码double myPanelHeight = 100;// hardcoded height of your panelpanelBookingList[i].Location = new Point(193, 128+ (i * myPanelHeight));
打开App,查看更多内容
随时随地看视频慕课网APP