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


Implementera databinding

Postades av 2003-05-16 09:18:19 - Roger Alsing, i forum c# (c-sharp), Tråden har 5 Kommentarer och lästs av 1026 personer

tjo ,

håller på med en ny kontroll nu.
(oke det är en grid)

som ska gå att koppla datakällor till.

min fråga är nu , finns det något i själva .net för att hämta data ur en datasource?
eftersom en datasource kan ju vara allt från en datatable till en IList.
(<b>jag undrar INTE hur man läser ur en databas så inga länkar till dataaccess buildingblocks eller så tack!</b>)

finns det någon databindings klass som kan exponera data från datakällan till mig utan att jag behöver veta om det är en datatable eller en ilist som är bunden???

jag vill ju bara ha tillgång till rader/kolumner/fält , sedan om dessa kommer från en datarow eller från ett objekt i en arraylist är ju inte intressant.

så , finns det något som fixar detta eller måste jag bygga wrappers som exponerar samma interface för alla tänkbara datakällor??? (det är vad jag gjort nu , men det verkar ju konstigt om detta inte finns inbyggt...)



dekompilerade delar av winforms datagridden och såg då att det finns någon bindingbasemanager , bindingcontext och en currencymanager ... och det verkade inte finnas någon kod som kollade om man bundit en datatable elle IList till datagridden...

så därför så kan man ju gissa att dessa klasser går att använda till detta på något sätt???

eller???

//Roger


Svara

Sv: Implementera databinding

Postades av 2003-05-16 10:18:24 - Patrik Löwendahl

foreach är ett hett tips *S* ..

Alla datakällor (datatable, Ilist, IBindingCollection OSV) stödjer foreach.

När du sedan skall hämta datan för fälten, måste du använda dig av ngn evaluerings funktion för att antingen ropa på en egenskap, eller på ett index. DataBinder.Eval används i ASP.NET, vet inte om du kan använda den i Windows applikationer. Men det borde i alla fall ge dig en lite bättre utgångsposition.


Svara

Sv: Implementera databinding

Postades av 2003-05-16 10:45:24 - Roger Alsing

på vilket sätt beskriver din lösning hur man får fram vilka kolumner som finns i en lista (är det en ilist som innehåller objekt så får ju objektens properties agera kolumner) ,

hur får jag fram vilka "child" rader en rad(/objekt) har?

som jag skrev i min första post , jag har redan gjort ett wrapper libb som kan exponera ut data från dessa på ett gemensammt sätt , dock känns det som
att allt detta borde finnas färdigt eftersom tex datagridden i windowsforms redan kan göra allt detta ... inklusive hantera rader med child rader..

har kollat lite mer på detta och det verkar iaf som det är CurrencyManager som ansvarar för att exponera värden från den underliggande tabellen/listan


Svara

Sv: Implementera databinding

Postades av 2003-05-16 10:57:10 - Roger Alsing

har kollat ännu mer på CurrencyManager nu..
och den klarar iaf de grundläggande sakerna..

ett litet exempel som visar hur man kan plocka ut värden från fält i rader från en datakälla..

(obs denna kod kan bara köras om den pejstas i en kontroll eller formulär eftersom den använder sig av bindingcontext)

<code>
CurrencyManager myCurrencyManager;

ArrayList ar=new ArrayList ();
ar.Add (new Point (10,20));
ar.Add (new Point (12,23));
ar.Add (new Point (13,24));
ar.Add (new Point (14,25));
ar.Add (new Point (15,26));

myCurrencyManager = (CurrencyManager)this.BindingContext[ar];

PropertyDescriptorCollection pdc= myCurrencyManager.GetItemProperties ();
//visa kolumner
foreach (PropertyDescriptor pd in pdc)
{
Console.WriteLine (pd.Name + " " + pd.PropertyType.ToString ());
}

//visa alla 'rader'
foreach (object o in myCurrencyManager.List)
{
Console.WriteLine (o);
}

//visa värdet av "X" i alla rader
foreach (object o in myCurrencyManager.List)
{
Console.WriteLine (pdc["X"].GetValue (o));
}

</code>


har dock inte kollat vad som händer om man kopplar en datatabell mot denna koden.
det kanske skiter sig rejält när man läser propps från en datarow via propertydescriptors :P

[edit]
nu har jag testat och det funkar prima :)

så nu gäller det bara att kunna plockaut childrader..
[/edit]


Svara

Sv: Implementera databinding

Postades av 2003-05-16 10:57:40 - Patrik Löwendahl

Currency managern är inblandad, och bindingcontext.

Satt precis med anakrinon och försökte följa anrops kedjan för data sourcen, men går in i en återvändsgränd vid RecreateDataRows och SetDataRows, lyckas inte klura ut hur de gjort i datagridden.


Svara

Sv: Implementera databinding

Postades av 2003-05-16 20:18:44 - Roger Alsing

nu finns en liten screenshot på grid eländet jag knåpar på nu..

www.compona.com/newgrid.jpg

den bör vara i någon form av alphaläge om en vecka eller två.

så om någon vill betatesta lite senare så skicka gärna ett imail..

//Roger


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
551
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