2016-06-08 5 views
0

Ich bin von einer vb.net-Anwendung auf C# migriert, ich verwendete this Werkzeug, um alle meine Code-Methode nach Methode zu konvertieren. Aber als ich den Code schließlich kompiliert habe und ich keine passende Methode gefunden habe, übergehe ich.keine geeignete Methode zum Überschreiben bei der Konvertierung von vb.net zu C#

Ich sah diese ähnliche Position No Suitable Method Found To Override

aber er verwendet partielle Klasse, aber ich bin mit einem inneren Klasse frmMain.cs-Code

namespace RSCWebPoll 
{ 
    internal class frmMain : System.Windows.Forms.Form 
    { 
    const bool IsDebug = false; 

     const short LoopTimeInSeconds = 300; 

     public TFSUtilities.Logger logger = new TFSUtilities.Logger(); 
     public System.DateTime NextPollTime; 
     public string WinDSSStoreName; 
     public string WinDSSStoreNumber; 
     public string WinDSSStoreCity; 
     public string WinDSSStoreState; 
     public string WinDSSRegisterNumber; 
     public string WinDSSTillNumber; 
     public string WinDSSDrawerNumber = "1"; 
     public short RegisterStatus; 
     public string TillSeqType; 
} 
} 

frmMain.Designer.cs

partial class frmMain 
{ 
    #region "Windows Form Designer generated code " 
    [System.Diagnostics.DebuggerNonUserCode()] 
    public frmMain() 
     : base() 
    { 
     //This call is required by the Windows Form Designer. 
     InitializeComponent(); 
    } 
    //Form overrides dispose to clean up the component list. 
    [System.Diagnostics.DebuggerNonUserCode()] 
    /// <summary> 
    /// Required designer variable. 
    /// </summary> 
    private System.ComponentModel.IContainer components = null; 

    /// <summary> 
    /// Clean up any resources being used. 
    /// </summary> 
    /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param> 
    protected override void Dispose(bool disposing) 
    { 
     if (disposing && (components != null)) 
     { 
      components.Dispose(); 
     } 
     base.Dispose(disposing); 
    } 
} 

jede Hilfe wird sehr geschätzt ... enter image description here

+5

Ich vermute, dass sich Ihre partiellen Klassen in verschiedenen Namespaces befinden, sodass sie nicht miteinander verknüpft werden. –

+1

Ja, Ihr FrmMain.Designer.cs hat keinen Namensraum, wie in dieser Frage eingefügt. Hast du mit dieser Datei herumgealbert? Es wird von VS generiert, also sollten Sie es nicht anfassen. – Will

+1

Der Namespace und die Formularklasse müssen in der cs-Datei und in der Datei designer.cs übereinstimmen. Außerdem muss der Standard-Namespace in den Projekteinstellungen mit dem Names-Space in den CS-Dateien übereinstimmen. – jdweng

Antwort

0

Ihre Klassennamen der beiden letztgenannten files.it prüfen wie unten

formx.cs wird

namespace WindowsFormx 
{ 
    public partial class formx: Form 

formx.designer.cs

namespace WindowsFormx 
{ 
    partial class formx 

prüfen Namespace von designer.cs

+0

Ich habe das bereits überprüft, aber ich benutze eine interne Klasse in der form.cs und partielle Klasse in form.designer.cs – CodeMan

+0

Beide Klassen sollten partiell sein, dann kann es nur als eine einzige Klasse erstellen –

Verwandte Themen