Permalänk
Medlem

noob fråga ang visual studio

jag har nu skapat 2 olika forms (Form1 och Form2)

nu vill är det så att i Form1 har jag en variabel som heter

String active = "mina akriva besökare" & bes.toString()

nu vill jag kunna komma åt den (String active) från Form2... hur gör jag detta?

Permalänk

Du använder en statisk klass som du sparar alla variabler i.

Dvs, du bör skapa en klass som implementerar Singleton pattern och Registry pattern, sparar alla saker där i och sen kan du komma åt variablerna i båda dina Form:s trådsäkert.

Permalänk
Medlem

ex på en hur man skriven en statiskt klass?

Permalänk
Medlem

lär dig programmera innan du försöker använda visual studio

Visa signatur

"Say unto thine own heart, I am mine own redeemer"
Don't touch me when I'm crazy of that airplane glue

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av DarkBob
lär dig programmera innan du försöker använda visual studio

Han skriver själv i rubriken att han är nybörjare, har du inget bra att komma med så håll det för dig själv.

I visual studio kan du högerklicka på din projektfil i solution explorer, sen väljer du Add->new item->class.

Jag rekommenderar att du börjar med att lära dig hur man skriver/hanterar klasser i allmänhet, här finns det enligt mig bra förklarat:
http://www.aspfree.com/c/a/C-Sharp/C-Sharp-Classes-Explained/

Sen efter det kan du läsa om hur det egentligen fungerar med statiskta klasser:
http://msdn.microsoft.com/en-us/library/79b3xss3.aspx

Mvh Niklas

Permalänk
Medlem

nu har jag gjort så här men det funkar inte...

[inc.cs]
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace DingDong
{
class inc
{
int bes;
}
}

[Form1.cs]
private void Form1_Load(object sender, EventArgs e)
{
inc include = new inc();
bes = 5;
}

Felmeddelande:
Error 1 The name 'bes' does not exist in the current context

Permalänk

Vet inte hur gammal du är och om du gör detta som en kurs eller bara vill lära dig som hobby, men jag rekommenderar dig verkligen att du köper dig en bok så du kan få förståelse för klasser och alla annat grundläggande inom c#.

Permalänk
Medlem

Hehe jag tror du missade att guiden på min första länk fortsatte i flera sidor. kolla på sida 3(http://www.aspfree.com/c/a/C-Sharp/C-Sharp-Classes-Explained/...).

Du måste alltså fortfarande deklarera variabler i klassen som ska hålla värdena du tilldelar den och när fixat det och vill tilldela ett värde klassen ska hålla så skapar du först en instans av klassen precis som du gjort(inc include = new inc();) men för att sen kunna använda dig av klassens egenskaper(bes till ex.) så skriver du alltid: instansnamn.egenskapsnamn, i detta fall include.bes.

Om du undrar över public i "public string FirstName" så kan du läsa om det på sida 2(http://www.aspfree.com/c/a/C-Sharp/C-Sharp-Classes-Explained/...).

Är det fortfarande tveksamheter så kan du PMa mig din msn så kan jag försöka hjälpa till där istället.

Lycka till!

//Niklas

Permalänk
Medlem

För att ge ett litet exempel..

using System.Windows.Forms; namespace Zoomware.Examples.SuperBasic { public partial class FirstForm : Form { public FirstForm ( ) { InitializeComponent ( ); secondForm = new SecondForm ( ); MessageBox.Show ( secondForm.AboutMe ); MessageBox.Show ( secondForm.MoreAboutMe ); OneClass.StaticPower = 18; OneClass oneClass = new OneClass ( 7, 17 ); MessageBox.Show ( "oneValue is " + oneClass.OneValue ); // Using the class name with the big OOO to get the static member.. MessageBox.Show ( "OneValue.StaticPower is " + OneClass.StaticPower ); } SecondForm secondForm; } public partial class SecondForm : Form { public SecondForm ( ) { InitializeComponent ( ); } // Use properties.. public string MoreAboutMe { get { return moreAboutMe; } // set { moreAboutMe = value; } } public string AboutMe = "I'm public !"; private string moreAboutMe = "You can get me.. but not set me !"; } public class OneClass { public OneClass ( int defaultValue, int staticValue ) { OneValue = defaultValue; // I can if i want to.. // OneClass.StaticPower = staticValue; } public int OneValue { get { return oneValue; } set { oneValue = value; } } public static int StaticPower { get { return OneClass.staticPower; } set { OneClass.staticPower = value; } } private int oneValue; private static int staticPower; } }