0
클래스 (ID, 이름, 코드, 가격)를 기반으로하는 목록과 그 값을 DataGrid에 추가하려고하는 메신저가 있습니다. 빈 DataGrid WPF
XAML을 뒤에
<DataGrid AutoGenerateColumns="False" Height="275" HorizontalAlignment="Left" Margin="337,51,0,0" Name="dataGridProducts" VerticalAlignment="Top" Width="403" Foreground="#FF803E3E">
<DataGrid.Columns>
<DataGridTextColumn Header="ID" Width="30" />
<DataGridTextColumn Header="Nazwa" Width="200" />
<DataGridTextColumn Header="Kod" Width="120" />
<DataGridTextColumn Header="Cena" Width="100" />
</DataGrid.Columns>
</DataGrid>
코드 :
private void categoryListBox_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
SqlConnection SqlConn = new SqlConnect().ConnectToSql();
using (SqlConn)
{
SqlConn.Open();
SqlCommand fillCategories = new SqlCommand("...", SqlConn);
SqlDataReader rdr1;
rdr1 = fillCategories.ExecuteReader();
while (rdr1.Read())
{
Products p = new Products(rdr1.GetInt32(rdr1.GetOrdinal("ID")), rdr1.GetString(rdr1.GetOrdinal("ProductName")), rdr1.GetString(rdr1.GetOrdinal("Barcode")), rdr1.GetString(rdr1.GetOrdinal("Price")));
completeProductList.Add(p);
}
}
dataGridProducts.ItemsSource = completeProductList;
}
를 해결하는 방법에 어떤 솔루션이 문제는, 데이터 그리드는 여전히 비어 있다는 것입니다, 나는 그 같이 의미 그것?
당신은 데이터 그리드 항목 소스의 클래스의 값으로 열을 바인딩해야합니다
적어도이 부분의 xaml을 공유해야합니다. 클래스 선언도 도움이 될 것입니다. – Maverik
오, 젠장, 여기에 xaml 코드를 입력했지만 너무 나 빠졌습니다. 다음은 xaml 및 클래스에 대한 링크입니다. http://pastebin.com/RD3YySDf – user13657
MVVM 패턴을 사용하고 있지 않습니까? 귀하의 코드에서 내 생각에 자동으로 열을 생성하려고하지만 xaml에 정의 된 열뿐만 아니라 바인딩이 없으므로 어떤 데이터도 표시 할 수 없습니다. – Maverik