微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

TableLayoutPanel只显示最后一行 – C#

我有一个有10行2列的TableLayoutPanel.

我的问题是,当我在第一列中添加标签而在另一列中添加一个按钮时,一切都很好.但当我在例如添加一个标签和按钮时在下一行,前一行是空的.似乎我的程序只显示最后添加的行.

码:

Label lblProjectName = new Label();
lblProjectName.Text = "test";
lblProjectName.Anchor = AnchorStyles.Left;
Button btnProject = new Button();
btnProject.Text = "Fill In";

tlpProject.Controls.Add(lblProjectName,0);
tlpProject.Controls.Add(btnProject,1,0);

tlpProject.Controls.Add(lblProjectName,1);
tlpProject.Controls.Add(btnProject,1);

TNX!

解决方法

您必须为面板中的每个单元格创建一个新控件.

目前,您的代码正在将控件移动到最后一列和最后一行.

像这样的东西:

for (int i = 0; i < numRows; ++i) {
  Button btnProject = new Button();
  btnProject.Text = "Fill In";
  tlpProject.Controls.Add(btnProject,i);
}

此处也必须添加任何事件处理程序,在处理程序端,您必须检查对象的“发送者”以查看用户按下的按钮.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐