0
私はWPFのPOSプロジェクトで作業していますが、現在のまたは最後の顧客IDに関連付けられたすべてのレコードをDataGridに取得します。私はテーブルから*を選択してそれを取得しながら、他のプロジェクトで同じ作業をしました。しかし、今回はなぜこのコードがうまくいかないのかわかりません。私の質問に出力イメージを含めています。DataGridは、データベースから取得したデータを1行に2回繰り返します。
<DataGrid x:Name="dataGrid" ItemsSource="{Binding DataSource}" HorizontalAlignment="Left" Margin="115,312,0,0" VerticalAlignment="Top" Height="376" Width="864">
<DataGrid.Resources>
<Style TargetType="{x:Type DataGridColumnHeader}">
<Setter Property="Background" Value="#1C75BC" />
<Setter Property="Foreground" Value="White"/>
<Setter Property="BorderBrush" Value="Black" />
<Setter Property="BorderThickness" Value="1" />
<Setter Property="Height" Value="20" />
</Style>
</DataGrid.Resources>
<DataGrid.Columns>
<DataGridTextColumn Header="BarCode" Binding="{Binding BarCode}" Width="*" />
<DataGridTextColumn Header="ProductName" Binding="{Binding ProductName}" Width="*"/>
<DataGridTextColumn Header="UnitPrice" Binding="{Binding UnitPrice}" Width="*" />
<DataGridTextColumn Header="SalePrice" Binding="{Binding SalePrice}" Width="*" />
<DataGridTextColumn Header="Quantity" Binding="{Binding Quantity}" Width="*" />
</DataGrid.Columns>
</DataGrid>
private void FillDataGrid(int counttt)
{
SqlConnection connn = db.getConnection();
connn.Open();
string CmdString = string.Empty;
//DateTime dateTime = DateTime.UtcNow.Date;
//String d = (dateTime.ToString("dd/MM/yyyy"));
CmdString = "SELECT BarCode, ProductName, UnitPrice, SalePrice, Quantity From CustomerSale WHERE CId = '" + counttt + "'";
SqlCommand cmd = new SqlCommand(CmdString, connn);
SqlDataAdapter sda = new SqlDataAdapter(cmd);
DataTable dt = new DataTable("CustomerSale");
sda.Fill(dt);
dataGrid.ItemsSource = dt.DefaultView;
connn.Close();
}
データテーブルにデータが入力されていますか? –
はい...しかし、出力イメージに示されているように、毎回データが2回繰り返されます –