Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# WPF-创建没有设计器的实体布局_C#_Wpf_Layout_Autolayout_Accessibility - Fatal编程技术网

C# WPF-创建没有设计器的实体布局

C# WPF-创建没有设计器的实体布局,c#,wpf,layout,autolayout,accessibility,C#,Wpf,Layout,Autolayout,Accessibility,我是盲人,希望使用WPF,因为它在很多方面都更容易访问。但是,用于在屏幕上定位元素的设计师无法访问。 在Winforms中,我使用每个控件的大小和位置属性来排列它们,使它们在屏幕上不会重叠。这与逻辑有关,而不是视觉,所以进展相当顺利。 不过,在WPF中,情况有点不同。我知道有几个布局容器,如Dockpanel、Stackpanel等。但我不确定它们是否能防止控件重叠。 所以我的问题是:如果你看不见,你会如何安排控件以确保它们不会重叠?您将使用哪些布局控件?在WPF中放置控件而不重叠控件的最

我是盲人,希望使用WPF,因为它在很多方面都更容易访问。但是,用于在屏幕上定位元素的设计师无法访问。
在Winforms中,我使用每个控件的大小和位置属性来排列它们,使它们在屏幕上不会重叠。这与逻辑有关,而不是视觉,所以进展相当顺利。
不过,在WPF中,情况有点不同。我知道有几个布局容器,如Dockpanel、Stackpanel等。但我不确定它们是否能防止控件重叠。

所以我的问题是:如果你看不见,你会如何安排控件以确保它们不会重叠?您将使用哪些布局控件?

在WPF中放置控件而不重叠控件的最简单方法是使用
。 可以使用固定值或相对值(使用“*”)定义宽度和高度。 为了得到好的简单解释,我可以推荐以下两个网站:


在网格中,您可以再次放置其他控件、面板,甚至其他具有自己行和列定义的网格,从而实现创造性设计

是的,它们可以防止控件重叠。这实际上是WPF的一个优点:它的容器相对放置控件和其他控件,这样它们就不会重叠、调整大小或在调整窗口大小时移动。如果控件大小将超过容器的大小,则控件的部分将被隐藏,而不是与其相邻部分重叠。这与任何容器有关,除了画布,元素按绝对坐标放置。

Bravo dude!虽然很难确定地回答这个问题,但我可以推荐一些东西。例如,如果您坚持使用具有行和列的网格之类的面板,并避免使用具有硬设置边距的画布之类的元素或布局基础的变换,那么这应该可以让您保持相当的可预测性。无论如何,这是一个非常有趣的问题!我需要将控件添加到特定(集合)的列和行中,以防止它们重叠,对吗?还是系统会自动完成?太好了!你发表的文章给了我一些关于如何做的想法。再一次,这比视觉更符合逻辑。整洁的也谢谢你。我将看看现在是否可以实现可靠的布局:)