我有一个 DataGrid,他的 ItemSource 绑定到以下对象:
public ObservableCollection<X> MyCollection{ get; set; }
Run Code Online (Sandbox Code Playgroud)
X 类包含 DataGrid 列的所有数据
例子:
private string name;
public string Name
{
get { return name; }
set
{
name= value;
NotifyPropertyChanged("Name");
}
}
Run Code Online (Sandbox Code Playgroud)
ETC。
有什么我可以在xaml中设置为基于内容的列宽度(当内容更改时宽度也会相应更改)?
我见过很多在 C# 代码中执行此操作的示例,我希望在 XAML 中执行此操作,这可能吗?
编辑:
数据网格:
<DataGrid x:Name="DG" ItemsSource="{Binding}" AutoGenerateColumns="False">
<DataGrid.Columns>
<DataGridTextColumn Header="{x:Static p:Resources.Name}" Binding="{Binding Name}"></DataGridTextColumn>
<DataGridTextColumn Header="{x:Static p:Resources.x}" Binding="{Binding X}"></DataGridTextColumn>
<DataGridTextColumn Header="{x:Static p:Resources.y}" Binding="{Binding Y}"></DataGridTextColumn>
</DataGrid.Columns>
</DataGrid>
Run Code Online (Sandbox Code Playgroud)
你可以这样设置,ColumnWidth="SizeToCells"这样就可以工作了。
<DataGrid x:Name="DG" ColumnWidth="SizeToCells" ItemsSource="{Binding}" AutoGenerateColumns="False">
Run Code Online (Sandbox Code Playgroud)
可用尺寸模式ColumnWidth
| 归档时间: |
|
| 查看次数: |
6421 次 |
| 最近记录: |