[英]How do i get rid of the extra columns?
我只是列出了一個客戶列表,從數據庫中獲取了客戶詳細信息,將它們添加到列表中,然后將該列表添加到了DataGrid中,但是我得到了很多額外的列! 這是我的DataGrid xaml代碼:
<DataGrid x:Name="dataGridC" HorizontalAlignment="Left" Margin="10" VerticalAlignment="Top" Height="150" Width="1000" />
這是我的代碼背后:
var cn = new System.Data.OleDb.OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Users\ASUS\Documents\Visual Studio 2015\Projects\G_D_C v2\G_D_C v2\G_D_C.mdb");
cn.Open();
OleDbCommand cmd = new OleDbCommand();
cmd.CommandText = "select * from [client]";
cmd.Connection = cn;
// OleDbDataReader rd = cmd.ExecuteReader();
using (OleDbDataReader reader = cmd.ExecuteReader())
{
while (reader.Read())
{
int ID = reader.GetInt32(0);
string nom_cs = reader.GetString(1);
int num_tel = reader.GetInt32(2);
int fax = reader.GetInt32(3);
string adresse = reader.GetString(4);
client c = new client(ID, nom_cs, num_tel, fax, adresse);
lsc.Add(c);
}
}
// dataGridC.ItemsSource = rd;
dataGridC.ItemsSource = lsc;
<DataGrid AutoGenerateColumns="False" />
https://msdn.microsoft.com/en-us/library/system.windows.controls.datagrid(v=vs.110).aspx
正確,因為您沒有指定要顯示的內容。 AutoGenerateColumns="False"
將不會生成DataGrid.ItemSource
中存在的列,因為該屬性只是告訴它不要生成任何列...行可能會顯示,但實際上什么都看不到。
<DataGrid x:Name="Grid" AutoGenerateColumns="False">
<DataGrid.Columns>
<DataGridTextColumn Binding="{Binding Id}" Header="ID" />
<DataGridTextColumn Binding="{Binding nom_cs}" Header="Nom CS" />
<DataGridTextColumn Binding="{Binding num_tel}" Header="Num Tel" />
<DataGridTextColumn Binding="{Binding fax}" Header="Fax" />
<DataGridTextColumn Binding="{Binding Adresse}" Header="Adresse" />
</DataGrid.Columns>
</DataGrid>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.