-1

listView (サブ項目) の 1 つの列のみに書き込もうとしていますが、1 つの配列だけでなく 2 つの配列を実行できるようにしたいのです。

それをやろうとすると、リストビューの次の列に追加されます(書き込みたい列ではありません)。

たとえば、これは配列を異なる列に追加しますが、すべてが同じ列に追加されるわけではありません。

 string[] k = getBetweenAll(thepage, "<h4 style=\"padding:0 0 0 3px;\"><a href=\"", "\" target=\"_blank\">");
 string[] q = getBetweenAll(thepage, "<h4><a href=\"", "\" target=\"_blank\">");
 for (int i = 0; i < k.Length && i < listViewClickbank.Items.Count; i++)
 {

     listViewClickbank.Items[i].SubItems.Add(input + k[i]);
     listViewClickbank.Items[i].SubItems.Add(input + q[i]);
 }
4

3 に答える 3

1

リストビューに追加する前に、2 つの配列を連結します。

var z = new string[k.Length + q.Length];
k.CopyTo(z, 0);
q.CopyTo(z, k.Length);

//TODO: Add z to the listview

または、連結せずにそれを行うことができます

 for (int i = 0; i < k.Length + q.Length; i++)
 {
     if (i < k.Length) {
         Items.SubItems.Add(input + k[i]);
     } else {
         Items.SubItems.Add(input + q[i - k.Length]);
     }
 }
于 2012-11-17T18:42:09.780 に答える
1

これを試して:

     string[] k = getBetweenAll(thepage, "<h4 style=\"padding:0 0 0 3px;\"><a href=\"", "\" target=\"_blank\">");
     string[] q = getBetweenAll(thepage, "<h4><a href=\"", "\" target=\"_blank\">");
     var items = listViewClickbank.Items;


     var z = new int[k.Length + q.Length]; 
     k.CopyTo(z, 0);
     q.CopyTo(z, k.Length);

     for (int i = 0; i < z.Length; i++)
     {
         Items.SubItems.Add(input + z[i]);
     }
于 2012-11-17T18:42:29.787 に答える
1

探している結果が正確に何であるかはあなたの質問からは明らかではありませんが、両方の値を 1 つの行の 1 つの列に連結する場合は、次のようにします。

listViewClickbank.Items[i].SubItems.Add(input + k[i] + q[i]);
于 2012-11-17T18:38:52.787 に答える