Jag vill ladda ett dataSet varjegång jag startar en applikation så att jag kan fylla min combobox men jag får ett felmeddelande som ser ut som nedan när jag har loadDS (som innehåller laddningen av dataSetet) i static void Main(). Fredrik,An object reference is required...
An object reference is required for the nonstatic field, method, or property 'SnedMail.Form1.loadDS()'
Jag antar att det är ett nybörjarfel, men enligt mina anteckningar från förr så ska det räcka med att ha metoden med att ha loadDS(); i Main.Sv: An object reference is required...
För att anropa <b>loadDS</b> måste du göra en av två saker
(1) Skapa ett <b>Objekt</b> av den klass som innehåller metoden i fråga, och sen anropa metoden
Form1 f = new Form1();
f.loadDS();
(2) Markera din metod som <b>static</b> vilket innebär att det är en <b>klassmetod</b> istället för en <b>instansmetod</b>. En klassmetod innebär att du inte måste ha skapat ett objekt av klassen som innehåller metoden för att kunna anropa den. Man använder dessa när metoden rent logiskt skall "grupperas" med klassen, men som inte direkt är beroende av data från klassen.
public class MyClass
{
public static void loadDS()
{
// kod för att fylla ditt dataset
}
}
sen anropar du den med
MyClass.loadDS();
Du försöker just nu göra ditt anrop till <b>loadDS</b>-metoden med hjälp av (2) när den är skriven för att bli anropad med (1)