正如標題所示,我試圖用db查詢的結果填充ListBox
,但我不確定如何管理它。我已經設法從另一個查詢填充DataGrid
,但我不確定如何對ListBox
執行相同的操作。我相信這很簡單,但我錯過了一些東西!類似的溢出頁面/谷歌搜索尚未得出明確的答案。我在Visual Studio的WPF應用程序中使用c#。用db查詢結果填充ListBox
在一個單獨的類我有這樣的:
public DataTable FillAllMenuItems()
{
SqlConnection con = new SqlConnection(@"Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=C:\Users\DustCatcher\Documents\pizzeria.mdf;Integrated Security=True;Connect Timeout=30");
SqlCommand cmd = new SqlCommand("SELECT name FROM MenuItems", con);
SqlDataAdapter sda = new SqlDataAdapter(cmd);
DataTable dt = new DataTable("Menu Items");
sda.Fill(dt);
return dt;
}
順便說一句,我敢肯定,上面是凌亂的,所以任何指針會有很大的(我需要一個using
任何地方嗎?)。在相關窗口CS文件我有:
User user = User.GetInstance();
lstbxAllItems.ItemsSource = user.FillAllMenuItems().DefaultView;
運行的應用程序,該ListBox
有System.Data.DataRowView
多次有在數據庫中的項目。我哪裏錯了?
設置'ValueMemberPath'和'DisplayMemberPath'你'ListBox'還我會建議使用'using'報表您'的SqlConnection,SqlCommand'等鏈接,' ItemSource' http://stackoverflow.com/questions/1790878/wpf-listbox-how-to-put-values-from-datatable – Sybren
Displaymemberpath做到了 - 感謝您的評論! – Penta
@ user2946329感謝您的簡短教訓。 – Penta