WPF如何减去绑定到DataGrid的数据库表的两列

时间:2018-06-07 11:13:47

标签: c# sql-server wpf

我想减去SQL服务器数据库表的两列,以计算(剩余金额=总计付费金额)绑定到DataGrid,如下所示

<DataGridTextColumn Binding="{Binding TotalBill}" Header="Total Bill />
<DataGridTextColumn Binding="{Binding PaidAmount}" Header="Bill Amount Paid"/> 

上述查询在SQL Server中执行时提供了所需的结果。但是当使用C#绑定WPF DataGrid时,没有给出任何输出。请帮帮我

con.Open();

string CmdString = "SELECT (si.TotalBill-siph.PaidAmount) from 
SupplyInvoicePaymentHistory siph inner join SupplyInvoice si on siph.SupplyInvoiceID=si.SupplyInvoiceID";

SqlCommand cmd = new SqlCommand(CmdString, con);           
SqlDataAdapter sda = new SqlDataAdapter(cmd);
DataTable dt1 = new DataTable("SupplyInvoicePaymentHistory");
sda.Fill(dt1);           
dataGridSupplyOrders.ItemsSource = dt1.DefaultView;

con.Close();

1 个答案:

答案 0 :(得分:0)

在您选择的查询中

已减去。并且您需要在DataGridTextColumn中使用该列名。

您只想显示剩余金额

您的查询应该是这样的

 <DataGridTextColumn Binding="{RemainingAmount}" Header="RemainingAmount" />

您的网格需要像这样添加

    SELECT si.TotalBill as TotalBill, siph.PaidAmount as  PaidAmount ,
     (si.TotalBill-siph.PaidAmount)as RemainingAmount from 
    SupplyInvoicePaymentHistory siph inner join SupplyInvoice si on 
    siph.SupplyInvoiceID=si.SupplyInvoiceID

您想要显示所有详细信息意味着您的查询应该是这样的

  <DataGridTextColumn Binding="{TotalBill}" Header="Total Bill" />
  <DataGridTextColumn Binding="{PaidAmount }" Header="PaidAmount"  />
  <DataGridTextColumn Binding="{RemainingAmount}" Header="RemainingAmount"/>

您的网格需要像这样添加

<iframe width="350" height="229.69" src="images/001.mp4"></iframe>

我希望它对你有所帮助。

相关问题