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


Egenskaper i collection med egna obekt

Postades av 2003-01-28 09:08:30 - Jacob de Laval, i forum c# (c-sharp), Tråden har 5 Kommentarer och lästs av 920 personer

Jag vill har en egendefinerad klass som jag vill lägga i en ArrayList. Klassen ser ut unefär så här:

class Test
{
public string Text
get
{
return c_Text;
}
set
{
c_Text = value;
}
private string c_Text = "";
}

Mitt problem är att jag inte kommer åt Text egenskapen, när jag lägger Test i en ArrayList. Jag har försökt med detta:

class Tester
{
public void Main()
{
ArrayList Lista = new ArrayList();
Test TestObekt = new Test();

Lista.Add(TestObekt);
Lista[0].Text = "Hej"; //Detta fungerar inte
}
}

Jag meddelas att obektet Lista inte stöder egenskapen Text. Hur gör jag?

/Jacob


Svara

Sv: Egenskaper i collection med egna obekt

Postades av 2003-01-28 09:12:34 - Patrik Löwendahl

Objekten i en Arraylist är generiska och alltid av typen System.Object. Det innebär att för att kunna komma åt Test klassens medlemmar måste du göra en type cast av det generiska objektet.

<code>
class Tester
{
public void Main()
{
ArrayList Lista = new ArrayList();
Test TestObekt = new Test();

Lista.Add(TestObekt);
((Test)Lista[0]).Text = "Hej"; //Detta fungerar inte
}
}
</code>


Svara

Sv: Egenskaper i collection med egna obekt

Postades av 2003-01-28 09:22:00 - Jacob de Laval

Tack för svaret, men finns det något sätt att unvika detta, så att man slipper skriva (Test) varje gång man ska ändra ett test objekt i en ArrayList? Kan man göra ett eget collection obekt, som fungerar som en ArrayList, men förväntar sig Test obekt?

/Jacob


Svara

Sv: Egenskaper i collection med egna obekt

Postades av 2003-01-28 10:02:25 - Roger Alsing

du måste göra en egen collection klass , läs om "typed collections"

men ett simpelt och dåligt exempel kan vara:


<code>
using System.Collections;
using TYPE=Test // ändra till tex. TYPE=System.Double om du vill ha en
// typad lista för double värden

public class MyCollection{
private ArrayList _List=new ArrayList();

public voic Add(TYPE item){
_List.Add(item);
}

public TYPE this[int index]{
get{
return (TYPE)_List[index];
}
}

public void Clear(){
_List.Clear();
}
}
</code>



nu kan du göra:

<code>
MyCollection mycol=new MyCollection();
Test t=new Test();
mycol.add(t);

Console.WriteLine(mycol[1].Text);
</code>



//Roger


Svara

Sv: Egenskaper i collection med egna obekt

Postades av 2003-01-28 11:00:10 - Patrik Löwendahl

Du kan implementera interfaceet ICollection


Svara

Sv: Egenskaper i collection med egna obekt

Postades av 2003-01-28 12:26:36 - Jacob de Laval

Tack för alla svar

/Jacob


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 154
27 952
271 704
1 409
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