c#WPF如何以编程方式设置控件的位置,宽度和高度?

Psy*_*ryo 10 c# wpf controls wpf-controls dockpanel

我正在做我的第一个WPF应用程序.我有问题,当我的表格最大化或全屏时,我的控件不会调整大小,只是停留在相同的位置.只有表格最大化.

在winform中,我可以在.cs中进行调整,如下所示:

panel6.Width
panel6.Height
panel6.Location
Run Code Online (Sandbox Code Playgroud)

这将帮助我设置它,如果我的表格最大化.我通过使用一些算术,我得到屏幕的分辨率和一些计算,并获得值,并可以将其设置为宽度,高度和位置.但这是在WINFORM中.

我将如何解决WPF中最大化和全屏的问题?有没有办法通过.cs文件以编程方式完成?或者WPF是否有一个简单的内置控件来解决这个问题?

假设这个例子我在WPF中使用dockpanel.

如果窗口最大化但其他控件仍然存在则毫无意义.

有任何想法吗?

Psy*_*ryo 25

设置宽度高度:

dockpanel1.width = 230;
dockpanel1.height = 230;
Run Code Online (Sandbox Code Playgroud)

至于位置,wpf使用保证金:

dockpanel1.Margin = new Thickness(0,440,836,40);
Run Code Online (Sandbox Code Playgroud)


小智 12

可以以编程方式在Canvas上移动子元素.

在xaml中:

<Canvas>
    <YourElement Canvas.Top="x" Canvas.Left="y"/>
</Canvas>
Run Code Online (Sandbox Code Playgroud)

在C#中:

Canvas.SetTop(YourElement, newX);
Canvas.SetLeft(YourElement, newY);
Run Code Online (Sandbox Code Playgroud)