0

lvi.Bounds で例外が発生しますが、それを止めるために何を確認すればよいかわかりません。コントロールを表示していて、Resize イベントまたは sizeChanged でこのメソッドを呼び出したとき、またはすべてを作成した後、コードが Windows に戻る前にのみ発生するようです。

private List<uint> GetIndexes(ListView vv)
    {
        List<uint> ret = new List<uint>();
        foreach (ListViewItem lvi in vv.Items)
        {
            uint uiKey = ((uint)lvi.Tag);
            if (!requestedImgs.Contains(uiKey) && lvi.Bounds.IntersectsWith(vv.ClientRectangle) && DctImages.Contains(uiKey))
            {
                ret.Add(uiKey);
            }
        }
        return ret;
    }
4

1 に答える 1