问题
I want to add new row to gridcontrol at every button click. I tried many ways but no success. I am sending my code.
private void B_Click(object sender, EventArgs e)
{
Button bt = (Button)sender;
int productId = (int)bt.Tag;
AddProductDataContext db = new AddProductDataContext();
decimal Quantity;
decimal.TryParse(txtCalculator.Text, out Quantity);
gridControl1.DataSource = from inv in db.Inventories where inv.RecId == productId
select new
{
inventoryName = inv.InventoryName,
Quantity,
Total = Quantity * inv.InventoryPrice
};
gridView1.AddNewRow();
gridView1.UpdateCurrentRow();
}
Is there anyone to help me out for the above? Thanks in advance for your precious replies.
回答1:
Try this :
Button bt = (Button)sender;
int productId = (int)bt.Tag;
AddProductDataContext db = new AddProductDataContext();
decimal Quantity;
decimal.TryParse(txtCalculator.Text, out Quantity);
var results = from inv in db.Inventories
where inv.RecId == productId
select new
{
inventoryName = inv.InventoryName,
Quantity,
Total = Quantity * inv.InventoryPrice
};
DataTable dt = new DataTable();
dt.Columns.Add("inventoryName");
dt.Columns.Add("Quantity");
dt.Columns.Add("Total");
foreach (var x in results)
{
DataRow newRow = dt.Rows.Add();
newRow.SetField("inventoryName", x.inventoryName);
newRow.SetField("Quantity", x.Quantity);
newRow.SetField("Total", x.Total);
}
gridControl1.DataSource = dt;
gridView1.AddNewRow();
来源:https://stackoverflow.com/questions/37187344/how-can-i-add-a-new-row-to-datagrid-at-every-button-click-in-winform