簡體   English   中英

在列表視圖C#中添加具有現有項目的新項目

[英]add new item with existing item in listview C#

我的listView中已經存在一些項目。 頁面上有一個添加按鈕,可打開一個對話框,用戶可以在其中添加新項目。 對話框關閉后,我必須將該新項目附加到已經存在的項目中。 這是代碼,直到結束,但未添加新項目。 我在列表視圖中有多個列。我在這做錯了什么。

public frmEditObject(AddException ObjException)
{
    InitializeComponent();
    if (ObjException != null)
    {
        ListViewItem lviMember, lviSender = null;
        bool alreadyExists =
            exceptionsList.Find(
                item =>
                item.UserDetail == ObjException.UserDetail && item.ExceptionType != ObjException.ExceptionType) !=
            null
                ? true
                : false;
        if (!alreadyExists)
        {
            exceptionsList.Add(ObjException);
            lvwExceptionMember.Items.Clear();
            lvwExceptionMember.BeginUpdate();
            foreach (var item in exceptionsList)
            {
                if (item.ExceptionType == Enumerations.ExceptionType.Members)
                {
                    lviMember = new ListViewItem(
                        item.UserDetail);
                    lviMember.Tag = 0;
                    lviMember.SubItems.Add(GetDisplayNameFromSamAccountName(item.UserDetail));

                    lvwExceptionMember.Items.Add(lviMember);

                }
            }
            lvwExceptionMember.EndUpdate();
            lvwExceptionMember.Refresh();
        }
    }
}

跟着這些步驟:

public frmEditObject(AddException ObjException)
{
    InitializeComponent();

    //CHECK THAT YOUR OBJECT IS ALIVE
    if (ObjException != null)
    {
        ListViewItem lviMember, lviSender = null;
        bool alreadyExists = exceptionsList.Find(item => item.UserDetail == ObjException.UserDetail && item.ExceptionType != ObjException.ExceptionType) != null ? true : false;
        if (!alreadyExists)
        {
             //CHECK THAT NEW ITEM IS REALLY NEW, DOES NOT EXIST IN LIST
             exceptionsList.Add(ObjException);

             //YOU DO NOT NEED TO CLEAR LIST AND ADD ALL ITEMS TO IT
             //lvwExceptionMember.Items.Clear();


             //lvwExceptionMember.BeginUpdate();

                 Debug.WriteLine(item.ExceptionType);                 
                 if (item.ExceptionType == Enumerations.ExceptionType.Members)
                 {
                      //CHECK DOES YOUR OBJECT HAVE MEMBERS TYPE
                      lviMember = new ListViewItem(item.UserDetail);
                      lviMember.Tag = 0;
                      lviMember.SubItems.Add(GetDisplayNameFromSamAccountName(item.UserDetail));

                      lvwExceptionMember.Items.Add(lviMember);

                 }

            // lvwExceptionMember.EndUpdate();
            //lvwExceptionMember.Refresh();
        }
   }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM