C# 如何限制列的最大宽度?
我有一个带有一些列的DataGrid,我希望其中一列占据所有可能的宽度来填充DataGrid,但不能再多了。所以,若DataGrid的宽度不够,它将包装文本。 我使用了文本包装,但它只在为列设置固定宽度时起作用。C# 如何限制列的最大宽度?,c#,silverlight,C#,Silverlight,我有一个带有一些列的DataGrid,我希望其中一列占据所有可能的宽度来填充DataGrid,但不能再多了。所以,若DataGrid的宽度不够,它将包装文本。 我使用了文本包装,但它只在为列设置固定宽度时起作用。 有什么方法可以达到我的目标吗?(使文本包装和自动调整宽度都能工作?我在WPF上有一些类似的案例,你应该试试 创建附加行为,该行为将在加载轴网或柱后,将柱的宽度设置为与柱的实际宽度相同 通过这种方式,您可以通过SL获得自动Witdh计算功能,并具有固定的Witdh,因此包装将起作用。由于
有什么方法可以达到我的目标吗?(使文本包装和自动调整宽度都能工作?我在WPF上有一些类似的案例,你应该试试 创建附加行为,该行为将在加载轴网或柱后,将柱的宽度设置为与柱的实际宽度相同
通过这种方式,您可以通过SL获得自动Witdh计算功能,并具有固定的Witdh,因此包装将起作用。由于您没有发布任何xaml,因此不清楚您尝试了什么。 以下工作很好:-
<sdk:DataGridTemplateColumn Width="*" Header="Memo">
<sdk:DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<TextBlock TextWrapping="Wrap" Text="{Binding Memo}" />
</DataTemplate>
</sdk:DataGridTemplateColumn.CellTemplate>
<sdk:DataGridTemplateColumn.CellEditingTemplate>
<DataTemplate>
<TextBox TextWrapping="Wrap" Text="{Binding Memo}" />
</DataTemplate>
</sdk:DataGridTemplateColumn.CellEditingTemplate>
</sdk:DataGridTemplateColumn>