2017-08-10 2 views
0

Hallo Ich schreibe ein C# -Programm basierend auf einem VB-Programm, um Text in Bildern zu erkennen. Allerdings kann ich nicht scheinen zu können, die C# -Äquivalent von dieser Linie, um herauszufinden:Konvertieren einer bestimmten Zeile eines VB-Programms in C#

listOfContoursWithData.Sort(Function(oneContourWithData, otherContourWithData) oneContourWithData.boundingRect.X.CompareTo(otherContourWithData.boundingRect.X)) 

Dies ist die ContourWithData Klasse, die listOfContoursWithData ist eine Instanz:

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
using System.Threading.Tasks; 
using Emgu.CV.Util; 

namespace TrainAndTest 
{ 
    public class ContourWithData 
    { 
     const int MIN_CONTOUR_AREA = 100; 

     public VectorOfPoint contour; // contour 
     public System.Drawing.Rectangle boundingRect; // bounding rect for contour 
     public double dblArea; // area of contour 

     public bool checkIfContourIsValid(){ 
     if ((dblArea < MIN_CONTOUR_AREA)) 
      return false; 
     else 
      return true; 
    } 
} 
+0

Ist 'listOfContoursWithData' eine' List '? –

Antwort

2

Sie ein verwenden können Lambda-Ausdruck:

listOfContoursWithData.Sort((oneContourWithData, otherContourWithData) => 
           oneContourWithData.boundingRect.X.CompareTo(otherContourWithData.boundingRect.X)); 

List<ContourWithData>.Sort() Die Methode verwendet ein Comparison<ContourWithData> als Parameter. Dies ist ein Delegat, der zwei ContourWithData Instanzen als Eingabe nimmt und eine int zurückgibt.

+0

Danke, das hat mir so sehr geholfen :) –

Verwandte Themen