[英]Binding Datagrid row number
我有一個具有Order屬性的對象,我想將其綁定到我的數據網格中。 可能嗎 ? 我想在數據網格中更改訂單,並在我的對象(帶有order屬性)中使用它。 我可以綁定嗎?
[編輯]
public class MyObject
{
...
public int Order {get; set;}
...
}
我想將此屬性與行的索引綁定。
好的,仍然不是很清楚,但是我將嘗試提供一些答案...這就是我理解的一個問題:您有一個類型為Order
'的屬性,名為'Order',並且想要在數據網格中編輯此屬性,例如使用組合
假設您有一個這樣的實體類(所有代碼-僅是示例,因為我不知道您擁有的確切類):
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>
................
希望這會有所幫助,如果不能,請提供您的示例代碼,我將嘗試在此基礎上添加一些示例
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.