我试图将我的DataGrid列绑定到一个列表,在该列表中可以使用索引器检索列的项目.索引器类型是DateTime.
我正在使用代码创建DataGrid列,并希望创建一个绑定以从列表中检索值.在XAML中,路径将写为:
{Binding Path = Values [01/01/2011]}
但是由于我在后面的代码中执行它,我需要使用PropertyPath定义路径,如下所示:
new Binding{
Path = new PropertyPath("Values[01/01/2011]")
}
Run Code Online (Sandbox Code Playgroud)
构造函数还有另一个重载,它带有路径和参数数组.根据文档,参数用于索引器.但是当我把我的装订写成
new Binding {
Path = new PropertyPath("Values", new DateTime(2011, 01, 01))
}
Run Code Online (Sandbox Code Playgroud)
绑定无法解析路径.很公平,我并没有说它应该寻找一个索引器.但如果我把它写成:
new Binding {Path = new PropertyPath("Values []",new DateTime(2011,01,01))}
然后将DateTime.MinValue传递给索引器.
有人可以向我解释我如何在构造函数中使用PathParameters以及如何绑定到索引器而不必在实际路径中对我的值执行ToString?
我在WPF中使用DataGrid并希望它缩小到只适合其列的宽度.它很适合初始渲染.当我调整列的大小以使其更宽时,网格也会增长.但是如果我调整列的大小以使其再次变窄,我会在列的右侧获得空白区域(我可以看到列标题灰色区域扩展到列之外.
我想让数据网格用列缩小它的宽度,这样我就不会得到右侧的空白区域.我试图调试代码,据我所知,问题出在DataGridCellsPanel中,但我看不到任何地方可以修复宽度测量.
任何帮助,将不胜感激.