从数据库填充ListBox

时间:2013-07-05 02:29:50

标签: c# wpf database entity-framework listbox

我正在使用 Entity Framework 从数据库中检索记录。我的用户控制页面每次运行时都会崩溃,但在我注释掉BindLstBox方法中的行之后;我的用户控制页面运行良好。这段代码有什么问题吗? (DAOActivity是一个包含CRUD代码的类文件。我想那里没有任何错误。)当我尝试运行时显示此错误:

  

'在'iStellar.home'类型上调用构造函数   匹配指定的绑定约束引发异常。线   数字'5'和行位置'14'。

下面是错误的屏幕截图:

enter image description here

DAO.DAOActivity daoActivity = new DAO.DAOActivity();

public home()
{
    InitializeComponent();
    BindListBox();
}

public void BindListBox()
{
    listBox1.ItemsSource = daoActivity.GetAll();
    listBox1.DisplayMemberPath = "ActivityName";
    listBox1.SelectedValuePath = "ActivityID";           
}

我的XAML:

  <ListBox Height="534" HorizontalAlignment="Left" Margin="218,415,0,0"
           Name="listBox1" VerticalAlignment="Top" Width="512" />

1 个答案:

答案 0 :(得分:1)

 Application.Current.Dispatcher.BeginInvoke(
         DispatcherPriority.Background,
            new Action(() =>
            {
                listBox1.ItemsSource = daoActivity.GetAll();
                listBox1.DisplayMemberPath = "ActivityName";
                listBox1.SelectedValuePath = "ActivityID";
            }));

我希望这会有所帮助。