我刚刚开始学习 WPF,为了将控件添加到窗口,我只是将它们从工具箱移到窗口上。然后我可以继续移动它们以将它们放在我想要的地方。现在我已经了解了布局/面板、堆栈面板、 Canvas 、停靠面板等,我正在努力理解为什么如果您可以自己在屏幕上拖动和移动对象/控件,它们会有用。
例如停靠面板,使用停靠属性,您可以将对象放在左侧、右侧、底部、顶部、最后一个子填充。您可以使用属性 DockPanel.Dock = "Left"将文本框停靠在左侧,但为什么我不能自己将它移到那里?
最佳答案
首先,不要浪费时间将控件拖/放到 WPF 应用程序中。通过以这种方式放置控件,您将严重限制您在 WPF 中的设计潜力。大多数认真的 WPF 设计人员甚至都懒得拖动控件,他们会手动键入所有 XAML。可以说,这就是 WPF 的设计方式。利用 XAML 可以让您的布局以 WinForms 做梦也想不到的方式完全动态化,但您必须手动编写 XAML 代码。
你知道这是怎么回事吗?设计 WPF 应用程序时不要拖放控件!我去过的每个 session 都强调这个事实!网格面板是 WPF 布局的重要组成部分,对于让您的控件在您期望的位置结束是至关重要的。
学习 WPF 最困难的部分是弄清楚它不是具有漂亮图形的 WinForms。这是一个完全不同的野兽,具有陡峭的学习曲线!一开始手工编写 XAML 代码非常乏味,但是一旦您了解了所有控件的名称和重要属性,您将比旧的拖放方法更快地创建 UI。
关于c# - 布局/面板有什么意义?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24391625/