我有datagridview,DataSource设置为myBindingList.列表项目实现INotifyPropertyChanged,因此datagridview自动响应列表中的更改.
现在我必须计算一些datagridview列的摘要.
它应该在以下时间完成:
第一个很清楚,但第二个问题我遇到了一个小问题.
当用户通过控制或更改时更改单元格的值时,将触发OnCellValueChanged:
myDataGridView.Rows[x].Cells[y].Value=newValue;
Run Code Online (Sandbox Code Playgroud)
但是关于:
myBindingList[myInvoice].Property1=newValue;
Run Code Online (Sandbox Code Playgroud)
DataGridView会自动刷新(INotifyPropertyChanged),但它不会触发OnCellValueChanged事件.
知道如何从我的DataGridView获取此类信息?它必须在DataGridView级别上完成,因为我正在编写自己的控件,扩展了dgv.
谢谢您的帮助.
我们想要做的是列出具有 NotNull 属性的类的所有属性。来自 .NET 的,而不是来自 JetBrains 的。不幸的是,看起来 NotNullAttribute 在编译过程中(或在其他阶段)被删除,并且在运行时无法观察到。
有谁知道为什么会发生?在互联网/MSDN 上找不到解释。
这是一个可以轻松重现它的测试。它在第二个断言上失败。
public class Tests
{
public class Foo
{
[NotNull, Required] public string? Bar { get; set; }
}
[Test]
public void GetAttributesTest()
{
var type = typeof(Foo);
var property = type.GetProperties()[0];
Attribute.IsDefined(property, typeof(RequiredAttribute)).Should().BeTrue();
Attribute.IsDefined(property, typeof(NotNullAttribute)).Should().BeTrue();
}
}
Run Code Online (Sandbox Code Playgroud) 我无法理解组合框的行为。
我有一个编辑视图来编辑现有的订单数据。这是我的部分订单数据的 VM:
public class OrderDataViewModel : ViewModelBase, IOrderDataViewModel
{
private readonly ICustomersListProviderService _customersListProviderService;
private readonly Order _order;
public OrderDataViewModel(Order order, ICustomersListProviderService customersListProviderService)
{
Assign.IfNotNull(ref _order, order);
Assign.IfNotNull(ref _customersListProviderService, customersListProviderService);
}
public DateTime CreationDate
{
get { return _order.CreationDate ?? (_order.CreationDate = DateTime.Now).Value; }
set
{
if (_order.CreationDate == value) return;
_order.CreationDate = value;
OnPropertyChanged();
}
}
public Customer Customer
{
get { return _order.Customer; }
set
{
if (_order.Customer == value) return;
_order.Customer = value;
OnPropertyChanged();
}
}
private …
Run Code Online (Sandbox Code Playgroud) c# ×2
attributes ×1
binding ×1
combobox ×1
datagridview ×1
mvvm ×1
reflection ×1
selecteditem ×1
winforms ×1
wpf ×1