[C#] Combobox met databinding(text) en datasource

Pagina: 1
Acties:

  • ygma!l
  • Registratie: December 2002
  • Laatst online: 05-05 11:51
Mijn doel is een combobox die een lijst met gegevens via een datasource ophaald. Deze combobox heeft als DropDownStyle "DropDown" waardoor je de mogelijkheid hebt om zelf tekst in te vullen (dit is ook een vereiste!!) Maar tevens moet het mogelijk zijn om eventueel al 'standaard' tekst te kunnen kiezen uit de lijst (die gevuld word via de datasource).

Nu heb ik dat geprobeerd door een datasource te maken met displaymember, valuemember en een databinding 'text' voor de tekst, maar dit werkt niet. Hij wil dan de niet die tekst weergeven en alle andere databindings die gebruik maken van dezelfde dataset krijgen ook niets meer. De datasource werkt dan wel.

Dit is zoals ik de code nu heb van de combobox:
code:
1
2
3
4
5
6
            this.combobox1.DataBindings.Add(new System.Windows.Forms.Binding
("Text", this.dataset1, "Table.TDL_locatie"));
            this.combobox1.DataSource = this.dataview2;
            this.combobox1.DisplayMember = "Naam";
            this.combobox1.Name = "combobox1";
            this.combobox1.ValueMember = "Naam";

Ohja: dataset1 is een andere database(tabel) dan dataview2 van dataset2. En de waarde van dataset1 hoeft niet gelijk te zijn aan een waarde uit dataset2. Deze velden zijn in de database's ook niet gekoppeld met elkaar.

  • ygma!l
  • Registratie: December 2002
  • Laatst online: 05-05 11:51
*schopje*

  • EfBe
  • Registratie: Januari 2000
  • Niet online
1 veld tonen in een combobox uit een rij van zeg 20 velden werkt niet als die andere velden niet nullable kunnen zijn, wanneer je daar handmatig text gaat toevoegen aan die combobox.

Creator of: LLBLGen Pro | Camera mods for games
Photography portfolio: https://fransbouma.com


  • ygma!l
  • Registratie: December 2002
  • Laatst online: 05-05 11:51
EfBe schreef op 01 november 2004 @ 09:04:
1 veld tonen in een combobox uit een rij van zeg 20 velden werkt niet als die andere velden niet nullable kunnen zijn, wanneer je daar handmatig text gaat toevoegen aan die combobox.
Ik weet niet precies wat je bedoelt, maar alle velden (zowel uit dataset1 als dataset2 (op de primaire sleutel na)) mogen de waarde 'null' bevatten.

Misschien kan ik het nog iets verder verduidelijken:
Dataset1 (achterliggende tabel):
*ID (primaire sleutel)
*Naam
*Adres
*Telnr
*Opmerkingen

Dataset2 (achterliggende tabel):
*ID (primaire sleutel)
*Naam
*Adres
*Telnr

Hierbij moet als voorbeeld alle 'namen' uit dataset2 middels een dataview in de combobox komen (als lijst).

Tevens moet van de actieve ID van dataset1 de waarde 'Naam' getoond worden als tekst... (en deze hoeft dus niet voor te komen in dataset2!!)

  • EfBe
  • Registratie: Januari 2000
  • Niet online
Mja, maar HOE ben je de handel aan het binden aan controls? ALs je ds 2 bindt aan een combobox en je vult een nieuwe naam in, wat gebeurt er dan? Dan gaat hij een nieuwe row toevoegen aan ds2, en die ID, is dat een autonumber field? Zo nee, dan gooit hij wellicht een exception.

Bind je ds 1 aan een grid? Zo ja, wil je dan ds1 als dropdown in een cell zien, of heb je de combobox in een normale set fields staan?

Creator of: LLBLGen Pro | Camera mods for games
Photography portfolio: https://fransbouma.com


  • ygma!l
  • Registratie: December 2002
  • Laatst online: 05-05 11:51
EfBe schreef op 01 november 2004 @ 11:13:
Mja, maar HOE ben je de handel aan het binden aan controls? ALs je ds 2 bindt aan een combobox en je vult een nieuwe naam in, wat gebeurt er dan? Dan gaat hij een nieuwe row toevoegen aan ds2, en die ID, is dat een autonumber field? Zo nee, dan gooit hij wellicht een exception.

Bind je ds 1 aan een grid? Zo ja, wil je dan ds1 als dropdown in een cell zien, of heb je de combobox in een normale set fields staan?
Nee, dataview 2 (die gekoppeld is aan dataset 2) is gekoppeld aan de combobox als datasource (zie startpost). En nee, dan voegt hij dat niet toe als nieuwe row (wat ook NIET de bedoeling is).

Dataset 1 is niet gekoppeld aan een grid. Je kunt een ID opgeven waarna hij vervolgens via databindings de textboxen vult... Het moet gewoon zo zijn dat je volledig flexibel kan werken door zelf naam, adres, telnr in te voeren, maar teven uit een namenlijstje kunnen kiezen zodat gegevens automatisch ingevoerd worden.
Pagina: 1