我有一种情况,我想在后面的代码中创建一个Binding对象,然后将其连接到datagrid列。像这样:

int i = 5; // Will get this value from some other object

Binding b = new Binding("Customers.where(c => c.CustomerId == " + i + ").ToList()[0].OrderValue");  // how to make this work ?

telerikGridView.Columns.Add(
    new Telerik.Windows.Controls.GridViewDataColumn
        {
            Header = "Customer",
            DataMemberBinding = b
        }
    );


我看到了另一个post,建议我可以使用转换器,或者应该创建一个自定义绑定类。但是转换器也不起作用。

我在这里错过了一些非常琐碎的事情吗?

最佳答案

在您的类上创建一个Observable集合,然后创建一个属性更改事件,然后在该事件上操作您的数据(where子句),然后对其进行绑定。

var coll = viewModel.GetPropertyValue("Customers") as ObservableCollection<Customers>;
coll += CustomerPropertychange_Event;

关于c# - 我们可以在后面的代码中使用WPF绑定(bind)中的Where子句吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32027161/

10-12 04:45
查看更多