【问题标题】:How to control the size of a TextBlock so the contents are fully displayed如何控制 TextBlock 的大小以便完全显示内容
【发布时间】:2023-03-07 15:45:01
【问题描述】:

在 WPF 中有没有办法设置 TextBlock,以便自动设置其 MinHeiht 和 MinWidth,以便其内容完全可见,还是我应该自己编写代码?

谢谢。

编辑:TextBlock 位于网格行内,我想设置行的最小大小以允许 TextBlock 显示其全部内容。

【问题讨论】:

  • 这将取决于 TextBlock 所在的容器。例如,如果它只是在垂直 StackPanel 中,它将水平增长以容纳其文本。
  • 能否提供一个 TextBlock 所在的示例?
  • 好的,有没有办法设置容器的最小尺寸,以便 TextBlock 的内容完全可见?

标签: wpf textblock stretch


【解决方案1】:

如果您将文本块的列的列定义宽度设置为“自动”,它将自动增长以适应不断增长的文本块。

【讨论】:

  • 如果我将列设置为自动并且有人将表单调整为更小的尺寸,则文本块会更小并且内容将不适合它。我需要一种方法来指定文本块的内容应该始终可见,避免用户以阻止内容被看到的方式调整表单大小。
  • 发生这种情况是因为 GridSplitter 无法使用自动调整大小的列。您需要做的是确保 GridSplitter 不会作用于自动调整大小的列(因此只需在两者之间添加另一列,设置 MinWidth 并将 Width 设置为 *)。这样,拆分器将永远不会触及您的自动调整大小的列。
最近更新 更多