添加后刷新列表框

本文关键字:列表 刷新 添加 | 更新日期: 2023-09-27 18:02:29

我有一个listbox在c#和希望它刷新后,我添加了一个新的项目(得到一个新的窗体对话框打开)

这是我的代码不能工作。

    private void showAllItems()
    {
        itemList = Db.getAllItems();
        lb_itemList.DataSource = itemList;
    }
    private void showItemPreview(object sender, EventArgs e)
    {
        string curItem = lb_itemList.SelectedItem.ToString();
        briefPreviewList = Db.getItemBriefPreview(curItem);
        string itemInfos = string.Join(",", briefPreviewList.ToArray());
        string[] infos = itemInfos.Split(',');
        l_itemDB.Text = curItem;
        l_CategoryDB.Text = infos[0];
    }
    private void b_addItem_Click(object sender, EventArgs e)
    {
        int uid = 1;
        AddItem addItemForm = new AddItem(uid);
        addItemForm.ShowDialog();
        CurrencyManager cm = (CurrencyManager)BindingContext[itemList];
        cm.Refresh();
    }

添加后刷新列表框

我假设当你插入一个新项目时,它被存储到数据库中,如果是这种情况,那么你所需要做的就是重置数据源:

private void b_addItem_Click(object sender, EventArgs e)
{
    int uid = 1;
    AddItem addItemForm = new AddItem(uid);
    addItemForm.ShowDialog();
    addItemForm.Dispose();
    this.showAllItems();
 }