winform双击ListView某行弹出窗体,关闭弹出窗体返回修改选中行的值
private void lvTags_DoubleClick(object sender, EventArgs e)
         {
             if (lvTags.Items.Count > 0)
             {
                 TagsEditor myTags = new TagsEditor();
                 int lvIndex = 0;
                 foreach (ListViewItem viewItem in this.lvTags.Items)
                 {
                     if (viewItem.Selected)
                     {
                         myTags.TagName = viewItem.SubItems[0].Text;
                         lvIndex = viewItem.ListView.SelectedIndices[0];
                     }
                 }
                 if (myTags.ShowDialog() == DialogResult.OK)
                 {
                     lvTags.Items[lvIndex].Selected = true;
                     lvTags.Items[lvIndex].SubItems[1].Text = myTags.StartHtml;
                    lvTags.Items[lvIndex].SubItems[2].Text = myTags.EndHtml;                }
             }            
         }
出现错误提示 InvalidArgument=“1”的值对于“index”无效!!!貌似是返回后没获取到选中行。请大大看看。
------解决方案--------------------
Items[lvIndex].SubItems[1],这里有两个问题,lvIndex是不是越界,SubItems是否越界
------解决方案--------------------设个短点  DEBUG 走一下
------解决方案--------------------你先判断一下有没有修改,如果修改了,就重新加载就行了