.net - WPF 防止动态网格内容超出父级大小

标签 .net wpf xaml wpf-grid

用户控件的宽度不得超过 700 像素。将其 MaxWidths 设置为 700px。

里面是一个网格 - 3 列。第一列和第二列将有标签,第三列将输入字段。标签内容将根据语言而动态变化。

我想做的是让第 2 列中的输入字段尽可能宽,一旦第 0 列和第 1 列中的标签在加载控件时动态获取其内容。

我已经设置:

1) 第 2 列的最小宽度,以确保如果第 0 列和第 1 列中的标签太宽,输入字段不会完全隐藏。

2) 将第 2 列设置为 Width="*",让我的输入字段使用设置标签时可用的所有宽度。

3) 第 0 列和第 1 列宽度=“自动”,让它们根据需要增长以容纳标签。

现在我遇到了这个问题 - 如果第 0 列或第 1 列获取的文本太长,则整个网格开始扩展超出其容器的最大大小,并且第三列被切断。有什么方法可以阻止这种情况,而不需要在第 0 列和第 1 列上设置 MaxWidth?

最佳答案

您可以设置要绑定(bind)到父级的MaxWidth:

<Grid MaxWidth="{Binding ActualWidth, ElementName=NameOfYourParentElement}" ... />

关于.net - WPF 防止动态网格内容超出父级大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16343235/

相关文章:

c# - 单个 TextBlock 中的替代文本

c# - Windows Phone 8.1 在图像上写文字

c# - 在 C# .NET 中实现接口(interface)

c# - 什么 "neutral culture"中断了 DateTime.TryParse()?

c# - WPF - 折线/路径周围的 HitTest 半径

派生文本框的 WPF 内存泄漏

c# - Windows 8 网格应用程序中的自定义详细信息页面

c# - 如何向现有界面添加属性?

c# - 计算 dataGridView 中选定行的值

WPF - 从中​​心屏幕到边缘绘制曲线,随着屏幕的变化动态适应