绑定数据网格行号
本文关键字:网格 数据网 数据 绑定 | 更新日期: 2023-09-27 18:15:26
我有一个具有Order属性的对象,我想将它绑定到我的数据网格中。这可能吗?我想改变一个数据网格的顺序,并在我的对象中使用它(与订单属性)。
[编辑]public class MyObject
{
...
public int Order {get; set;}
...
}
我想将这个属性与我的行Index绑定
好的,仍然不是很清楚,但我会尽量提供一些答案…这就是我如何理解一个问题:你有一个类型为Order
'的属性,名为'Order',并希望在数据网格中编辑此属性,例如使用Combo
假设你有一个像这样的实体类(所有代码-只是示例,因为我不知道你有确切的类):
class Something : EntityBase {
................
public int Order { get; set; }
................
}
用数据模型包装,如:
public SomethingModel : EntitydataModelBase<Something> {
................
public int Order {
get {
return this.Entity.Order;
}
set {
if (this.Entity.Order == value) return;
this.Entity.Order = value;
NotifyPropertyChanged("Order");
}
}
................
}
此外,还有一个带有数据网格的屏幕视图模型,如下所示:
public SomethingListViewModel : ViewModelBase {
................
public IList<SomethingModel> _Items;
public IList<SomethingModel> Items {
get {
return _Items;
}
private set {
if (_Items == value) return;
_Items = value;
NotifyPropertyChanged("Items");
}
}
................
}
最后是XAML:
................
<Grid x:Name="gridContainer"> <!-- We will use this name to make a reference in binding expression --!>
<DataGrid
ItemsSource="{Binding Items, Mode=OneWay, UpdateSourceTrigger=PropertyChanged}">
<DataGrid.Columns>
<!-- "Actually, don't remember a name of class for tempolated column" -->
<DataGridTemplatedColumn
Header="Order">
<DataGridTemplatedColumn.CellTemplate>
<DataTemplate>
<TextBox
Text="{Binding Order, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"/>
</DataTemplate>
</DataGridTemplatedColumn.CellTemplate>
</DataGridTemplatedColumn>
</DataGrid.Columns>
</DataGrid>
................
希望这将有助于,如果它不会,请提供您的示例代码,我会尝试添加一些基于它的例子