在对话框底部的左侧和右侧添加几个按钮的正确方法是什么?

时间:2018-05-06 11:38:13

标签: c# .net visual-studio-2017 windows-forms-designer

到目前为止,我在对话框中对齐按钮所做的是创建TableLayoutPanel并为每列添加一个按钮,然后手动设置按钮适合的列大小。中间的一个空列在哪里,宽度可以灵活。

enter image description here

这当然不是正确的解决方案。我如何在设计师中正确地做到这一点?

1 个答案:

答案 0 :(得分:3)

使用Dock

左侧按钮需要Dock.Left,右侧按钮需要Dock.Right

请注意,向左或向右对接意味着从上到下填充容器,因此您还必须有一个容器来控制按钮的高度。

DockStyle Enum页面的备注部分:

  

如果选择了Left,Right,Top或Bottom,则控件的指定边和相对边的大小将调整为包含控件的相应边的大小。如果选择“填充”,则控件的所有四个边都会调整大小以匹配包含控件的边。

通常,您使用两个面板执行此类操作,一个使用Dock.Bottom,其中高度设置为按钮的高度,另一个使用Dock.Fill,这将具有Dock内容。
然后,在停靠在底部的容器中,停靠按钮。

请注意,使用 uid = this.afAuth.auth.currentUser.uid; answersRef: AngularFireList<any>; allMyAnswers: Observable<any[]>; constructor(private afAuth: AngularFireAuth, private db: AngularFireDatabase, public authService: AuthService, private router: Router) { var path = 'users/' + this.uid + '/answers'; this.answersRef = db.list(path); this.allMyAnswers = this.answersRef.snapshotChanges().map(changes => { return changes.map(c => ({ key: c.payload.key, ...c.payload.val() })); }); } 时,放置容器中元素的顺序非常重要 - 第一个按钮将停靠在外边缘,第二个按钮将停靠在其后面。< / p>

从同一页的备注部分:

  

当控件停靠在其容器的边缘时,在调整容器大小时,它始终与该边缘齐平。如果多个控件停靠在边缘上,则控件根据其z顺序并排显示; z顺序中较高的控件位于距离容器边缘较远的位置。