list view
には、プレフィックス用と接続文字列用の2つの列があります。ListViewの名前が正しく変更されない
例:
Prefix| Connection string
--------------------------
OR1_ | blablabla
--------------------------
OR2_ | blebleble
--------------------------
OR3_ | blublublu
--------------------------
(その場しのぎのテーブルのため申し訳ありませんが、私は理解しやすくなると思う)
私はListViewコントロールから項目を削除するたびだから今、私はすべてのプレフィックスの名前を変更する必要があります私は項目番号2を削除した場合、私はで終わるだろうと想像:
Prefix| Connection string
--------------------------
OR1_ | blablabla
--------------------------
OR3_ | blublublu
--------------------------
しかし、私は実際にそれがOR1_とOR2_
する必要がありますので、私は、私はアイテムを削除するときことない、このコード作られた:私は、リスト上の最初アイテムを削除する場合
private void buttonDel_Click(object sender, EventArgs e)
{
if (listViewConnectionStrings.Items.Count == 0) return;
else
{
//Delete the items
foreach (ListViewItem eachItem in listViewConnectionStrings.SelectedItems)
{
Connections.Remove(eachItem.Text);
listViewConnectionStrings.Items.Remove(eachItem);
}
if(listViewConnectionStrings.Items.Count == 0) return;
//Rename the prefixes
int cntItems = listViewConnectionStrings.Items.Count;
for (int i = 0; i <= cntItems; i++)
{
ListViewItem newItem = new ListViewItem();
newItem = listViewConnectionStrings.Items[0];
int newPrefix = i++;
newItem.Text = @"OR" + newPrefix.ToString() + @"_";
}
}
}
を最後for
が正常に動作しているが、それは、適切に他のすべての名前を変更しますが、途中か下にあるものを削除すると、最初のものではないものもあります。他のものはすべて同じ名前になります。
何が間違っていますか、何が間違っていますか?
時間内に複数のアイテムを削除していますか、1つのアイテムだけを選択していますか? IE MultiSelectプロパティがtrueまたはfalseに設定されていますか? – Steve