Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Manipulera data från annan klass/fönster C#?

Postades av 2007-03-28 09:02:37 - Johan Ek, i forum c# (c-sharp), Tråden har 3 Kommentarer och lästs av 552 personer

Någon som vet?
Jag har placerat objekt i en separat klass pubObj.cs
I mitt huvudfönster gör jag:
PubObj my_pubObj = new PubObj();

Om jag från mitt "huvudfönster" öppnar ett "SettingsWin" fönster med koden:
SettingsWin settWin = new SettingsWin();
settWin.ShowDialog();

Hur gör jag för att kunna manipulera mitt objekt my_pubObj från SettingsWin.
Jag vill att ändringarna skall vara kvar i huvudfönstret när SettingsWin stängs ned.
Svara gärna med lite kod....:) //Johan


Svara

Sv: Manipulera data från annan klass/fönster C#?

Postades av 2007-03-28 17:50:37 - Per Hultqvist

Hej Johan,

Det finns några olika sätt, men ett enkelt sätt är att skicka med en referens till my_pubobj till kontruktorn i SettingsWin :
<code>
// Privat variabel för att hålla den lokala referensen till PubObj
private PubObj my_pubobj;

// Konstruktorn i SettingsWin
public SettingsWin(PubObj pubObj)
{
my_pubobj=pubObj;
}

public void DoStuff()
{
// Här kan du jobba med den lokala referensen
my_pubobj.MyProperty=10;
}
</code>
För att öppna SettingsWin från huvudfönstret gör du så här :
<code>
using (SettingsWin form=new SettingsWin(my_pubobj))
form.ShowDialog();
</code>
Du måste inte använda Using när du öppnar formulär, men jag gillar att göra så eftersom man då slipper anropa Dispose-metoden (fungerar alltså bara på klasser som implementera IDisposable).


Svara

Sv:Manipulera data från annan klass/fönster C#?

Postades av 2007-03-28 20:02:29 - Johan Ek

Tack så mycket för ditt svar!!

Ett fel av mig var att glömma att deklarera pubObj "public".
Sen den här "usingmetoden" hade jag inte använt utan:

SettingsWin settWin = new SettingsWin(my_pubObj);
settWin.ShowDialog();
settWin.Dispose();

Fråga till dig eller någon annan expert där ute:
Har jag använt Dispose på rätt sätt, och om jag skulle missa att köra Dispose vad händer då?
Kommer programmet storkna pga RAM-minnesbrist?
Jag trodde att C#:s garbage collector fixade sånt med nån smart logaritm...:)


Svara

Sv: Manipulera data från annan klass/fönster C#?

Postades av 2007-03-30 11:50:14 - Per Hultqvist

I princip så fixar den det för det mesta...men:

1) Det tillhör god programmeringssed att anropa Dispose om klassen implementerar IDisposable. Using gör ju detta ganska enkelt.

2) Om klassen använder vissa typer av resurser (icke-managed) som kanske är begränsade till antalet, så måste man anropa Dispose så snabbt som möjligt för att inte krockar skall uppstå om någon annan process eller tråd vill använda samma resurs. Och eftersom det är svårt att veta vilka resursen en speciell klass använder om inte har källkoden till den, så gäller 1) som ett bra sätt att slippa fundera på om man "behöver" anropa Dispose omedelbart eller ej.

Ungefär så tror jag man kan sammanfatta det, utan att jag för den skull har jättebra koll på GC:n.


Svara

Nyligen

  • 09:09 Vill du köpa medicinska tester?
  • 12:47 Vem beviljar assistansen – kommune
  • 14:17 Någon med erfarenhet av hemstädnin
  • 14:14 Bör man använda sig av en båtförme
  • 14:12 Finns det någon intressant hundblo
  • 14:25 Tips på verktyg för att skapa QR-k
  • 14:23 Tips på verktyg för att skapa QR-k
  • 20:52 Fungerer innskuddsbonuser egentlig

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 569 170
27 953
271 705
939
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies