C#wpf将新行添加到另一个数据表

问题描述 投票:0回答:1

我有一个产品表有9列,我有另一个表,我只想有4列,这就是为什么我宣布这个

    private void SetCartColumns()
    {
        cartTable.Columns.Add("Product Code", typeof(Int32));
        cartTable.Columns.Add("Product Name", typeof(String));
        cartTable.Columns.Add("Product Quantity", typeof(Int32));
        cartTable.Columns.Add("Total Price", typeof(double));
    }

现在我想将产品表中选定的索引或项目添加到购物车表中,以下是代码


    private void BtnAddToCart_Click(object sender, RoutedEventArgs e)
    {
        if (dtgProducts.SelectedItem == null)
        {
            MessageBox.Show("There is no selected rows!");// show a message here to inform
        }
        else
        {
            while (dtgProducts.SelectedItems.Count > 0)
            {
                int selectedIndex = dtgProducts.SelectedIndex;
                var selectedRows = ((DataRow)searchTable.Rows[selectedIndex]);
                int code = selectedRows.Field<int>(("Code"));
                string name = selectedRows.Field<string>(("Name"));
                int quan = selectedRows.Field<int>(("Quantity"));
                float price = selectedRows.Field<float>(("Price"));
                double totalPrice = Convert.ToDouble(price);


                cartTable.Rows.Add(new Object[] { code, name, quan, totalPrice });
            }
            dtgCart.ItemsSource = cartTable.AsDataView();
        }
    }

但每当我点击添加到购物车按钮时,没有任何反应,但我的程序挂起,除了停止调试之外我无法点击任何内容..有人会告诉我如何将新项目添加到只有选定列的新表中

c# wpf datatable datagrid
1个回答
0
投票

请参阅:https://msdn.microsoft.com/en-us/library/5ycd1034.aspx

并且您应该避免在dataTable的列名中有空格

© www.soinside.com 2019 - 2024. All rights reserved.