有没有办法在使用后更改绑定?

时间:2014-11-03 12:17:43

标签: c# wpf data-binding

wpf应用程序有一个数据网格,其列为TimeStamp。列数据每1秒刷新一次。

默认时间戳格式为“hh:mm:ss.fff”。我需要在运行时将时间格式更改为“dd / MM / yyy hh:mm:ss:fff”。

我用过像

timeStampColumn.Binding = new Binding("TimeStamp");
timeStampColumn.Binding.StringFormat = "{0:dd/MM/yyy hh:mm:ss:fff}";

此处timeStampColumn是数据网格列名称

但它正在抛出异常 “绑定canot在使用后可以使用”。

1 个答案:

答案 0 :(得分:1)

在使用新绑定之前设置StringFormat属性:

var binding = new Binding("TimeStamp");
binding.StringFormat = "{0:dd/MM/yyy hh:mm:ss:fff}";
timeStampColumn.Binding = binding;

或更短:

timeStampColumn.Binding =
    new Binding("TimeStamp")
    {
        StringFormat = "{0:dd/MM/yyy hh:mm:ss:fff}"
    };