Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/23.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# 锚定标签_C#_.net_Wpf - Fatal编程技术网

C# 锚定标签

C# 锚定标签,c#,.net,wpf,C#,.net,Wpf,我是WPF的新手,尝试在面板中插入由算法计算的标签。我在代码中创建标签。我不使用标签的设计器 问题是,当我将标签添加到面板时,当我调整窗口大小时,它会被调整大小。我希望标签的高度和宽度是固定的。显然,它被锚定在窗口的底部(我从通常的Winforms行为中知道这一点) 我怎样才能解开它,或者给它一个固定的尺寸 编辑 XAML: 如果只想硬编码宽度和高度,请明确设置标签的宽度和高度属性: <Label Width="100" Height="20">Hello World</La

我是WPF的新手,尝试在面板中插入由算法计算的标签。我在代码中创建标签。我不使用标签的设计器

问题是,当我将标签添加到面板时,当我调整窗口大小时,它会被调整大小。我希望标签的高度和宽度是固定的。显然,它被锚定在窗口的底部(我从通常的Winforms行为中知道这一点)

我怎样才能解开它,或者给它一个固定的尺寸

编辑

XAML:


如果只想硬编码宽度和高度,请明确设置标签的
宽度
高度
属性:

<Label Width="100" Height="20">Hello World</Label>
你好,世界
一个
网格
会在没有其他信息的情况下自动居中并拉伸其子对象,这是您可能看到的默认行为


(如果您提供更多的代码/标记,我可以给出更详细的解释。)

我建议使用
水平对齐
垂直对齐

<Label HorizontalAlignment="Center" VerticalAlignment="Center" Content="Hello World" />

通过这种方式,标签自动居中,尺寸由WPF引擎动态调整


还请记住,在大多数情况下,WPF接口不应该由代码隐藏来开发,如果不总是这样的话。您可以轻松地使用Xaml来解决问题。

它没有固定在窗口底部(您对Winforms布局行为所知的一切都不适用于此);它由它的父控件进行布局。你的完整Xaml是多少?实际上可能是因为我更改了边距。这可能是代码中的错误。(我的XAML没有定义任何东西。那里只有一个网格。)那么您是在代码中将标签添加到网格中吗?无论您在做什么,都要共享代码/标记……当您提出问题时,仍然需要发布XAML。只要未定义标签宽度高度,它们就不会使用父控件调整大小,并且如果父控件为栅格,则位置将保持在左上角的x、y位置。如果您熟悉HTML,请将其视为具有绝对值的DIV。谢谢您的帮助。问题在于利润率的计算。我把它修好了。不管怎样,现在我发布了代码,也许你仍然可以发现它有问题,尽管现在一切都正常。正如我所说,我还不熟悉WPF的做事方式。随着时间的推移,每次引发事件时(如按钮单击,或从传感器等其他硬件部件)都会添加多个标签。但我实际上想从网格底部“滚动”标签。这意味着我必须将标签放置在网格底部,并在新标签出现时将其向上移动。(这是动画,我不能把它们固定在底部)好吧,也许我不理解你,但如果你想,你可以用WPF操纵动画:。
<Label Width="100" Height="20">Hello World</Label>
<Label HorizontalAlignment="Center" VerticalAlignment="Center" Content="Hello World" />