wpf - 如何实现代码来修复 WPF 中的标签?
问题描述
我正在处理一个亚音速喷嘴模拟器,我遇到了麻烦,因为如果我改变标签的高度,标签的位置就会改变。
我想用代码修复这个位置,并且能够在没有任何影响的情况下改变高度。
代码如下:
for (int j = 0; j < columns; j++)
{
System.Windows.Controls.Label lbl = new System.Windows.Controls.Label();
lbl.Height = Areas[j] * 30;
lbl.Width = rejilla.Width / columns;
lbl.Tag = new Point(1, j);
lbl.BorderBrush = new SolidColorBrush(Colors.Gray);
lbl.BorderThickness = new Thickness(1);
if (nozzleQ1D.ColorCeldaPresion(Pressures[j]) == "Black")
lbl.Background = new SolidColorBrush(Colors.Black);
if (nozzleQ1D.ColorCeldaPresion(Pressures[j]) == "Firebrick")
lbl.Background = new SolidColorBrush(Colors.Firebrick);
if (nozzleQ1D.ColorCeldaPresion(Pressures[j]) == "Red")
lbl.Background = new SolidColorBrush(Colors.Red);
if (nozzleQ1D.ColorCeldaPresion(Pressures[j]) == "Orange")
lbl.Background = new SolidColorBrush(Colors.Orange);
if (nozzleQ1D.ColorCeldaPresion(Pressures[j]) == "Yellow")
lbl.Background = new SolidColorBrush(Colors.Yellow);
if (nozzleQ1D.ColorCeldaPresion(Pressures[j]) == "Green")
lbl.Background = new SolidColorBrush(Colors.Green);
if (nozzleQ1D.ColorCeldaPresion(Pressures[j]) == "Cyan")
lbl.Background = new SolidColorBrush(Colors.Cyan);
if (nozzleQ1D.ColorCeldaPresion(Pressures[j]) == "Blue")
lbl.Background = new SolidColorBrush(Colors.Blue);
if (nozzleQ1D.ColorCeldaPresion(Pressures[j]) == "Purple")
lbl.Background = new SolidColorBrush(Colors.Purple);
if (nozzleQ1D.ColorCeldaPresion(Pressures[j]) == "Indigo")
lbl.Background = new SolidColorBrush(Colors.Indigo);
stkPanel.Children.Add(lbl);
}
rejilla.Children.Add(stkPanel);
解决方案
推荐阅读
- php - Laravel JWT - 使用有效的登录令牌未经身份验证
- reactjs - 为什么在 api 调用后 useEffect 不更新值?
- javascript - 在网格单元javascript中获取复选框值
- python - How to conditionally add items to a series in a dataframe
- here-api - 此处观察 api 中的风速指标是什么?
- r - 对多条 geom_rect 线使用 override.aes 时遇到问题
- php - Laravel API 不反映直接在数据库中所做的更改
- javascript - 如何序列化包含 blob 图像的 FormData?
- javascript - innerHTML 创建一个新元素,而不是替换目标元素的 innerHTML
- dynamics-crm - 从 Dynamics CRM 2011 升级到 CRM 2016 后,表单和插件出现奇怪问题