public void Revert_value_on_incorrect_input()
        {
            var waybill = new Waybill(new Address("ั‚ะตัั‚"), new Supplier());
            var line    = new WaybillLine(waybill);

            line.RetailCost = 150;
            waybill.AddLine(line);
            WpfTestHelper.WithWindow2(async w => {
                var grid                 = new DataGrid2();
                grid.IsReadOnly          = false;
                grid.AutoGenerateColumns = false;
                grid.Columns.Add(new DataGridTextColumnEx {
                    Binding = new Binding("Product")
                });
                grid.Columns.Add(new DataGridTextColumnEx {
                    Binding = new Binding("RetailCost")
                });
                w.Content        = grid;
                grid.ItemsSource = waybill.Lines;
                await w.WaitIdle();
                var cell = grid.Descendants <DataGridCell>()
                           .First(x => x.Column == grid.Columns[1] && x.DataContext == line);
                Assert.IsTrue(cell.Focus());
                cell.SendKey(Key.F2);
                Assert.IsTrue(cell.IsEditing);
                var input = cell.Descendants <TextBox>().First();
                input.SendText("asd");
                grid.SendKey(Key.Down);
                Assert.IsFalse(cell.IsEditing);
                Assert.AreEqual(150, line.RetailCost);
            });
        }