10. april 2012 - 23:15Der er
10 kommentarer og 2 løsninger
WPF/SQL - Indsættelse af ny kolonneværdi i textfelt fra combobox-valgt-værdi
Jeg øsnker at indsætte en værdi fra kolonnen ProfilID i et tekstfelt når min combobox vælger en værdi.
Det var muligt at hente værdierne ind i comboboxen som en liste fra min ElevID-kolonne sådan her;
public Page1() {
InitializeComponent();
var db = new DataClasses1DataContext(); comboBox3.ItemsSource = db.Elevs; comboBox3.DisplayMemberPath = "ProfilID"; comboBox3.SelectedValuePath = "ElevID";
etc...
Men længere nede i min private combobox-valg-handler-metode er det et andet ball-game når jeg vil hente en værdi i en anden kolonne (i samme table dog);
public void comboBox3_SelectionChanged(object sender, SelectionChangedEventArgs e)
{ int ob = Convert.ToInt32(comboBox3.SelectedIndex+1);// 1 til 10 comboBox3.DisplayMemberPath = "ProfilID"; // hvis 1 => 17, 2=11, comboBox3.SelectedValuePath = "ElevID"; // hvis 1 => 1
textBox15.Text = Convert.ToString(ob); textBox16.Text = Convert.ToString(value3); comboBox3.DisplayMemberPath = "Navn"; //linje der køres for at bibeholde navne i comboboxen
- - - Outputtet bliver nogle værdier der er langt større end mine ProfilID'er i min tabel + at når jeg vælger combobox-index over 8 (går fra 1 til 10) crasher programmet med at indeksets max er overgået :-/
Jeg har ingen ide om hvad du har gang i ... Index er index plads og kan ikke direkte oversættes til dine ID'er.
comboBox3.DisplayMemberPath = "ProfilID"; // hvis 1 => 17, 2=11, comboBox3.SelectedValuePath = "ElevID"; // hvis 1 => 1
Overstående forstår jeg ikke.
Int32 value3 = Convert.ToInt32(comboBox3.DisplayMemberPath[ob]); string kan du index dig i ... dvs
string s = "limes"; så vil: s[0] == l; s[1] == i s[2] == m
Altså du vil få char værdien.
I din kode laver du så den char værdi om til en int ... fuldt lovligt, men du får nok ikke det resultat du gerne vil have.
Jeg tror du skal have fat i: comboBox3.SelectedValue eller comboBox3.SelectedItem ... den værdi kommer så fra den kolonne du har sat i: comboBox3.SelectedValuePath = "ElevID";
Dvs ... du burde her så "ElevID" som din SelectedValue.
Ok - fair nok... sidst havde jeg lidt grafik med og det fåes også nu (tror vi bør vente lidt med at se på C#-koden før DB-kode er udredt (forsøger personligt hårdt at lære C# og Java med endless tuts - mån håber jeg får overblikket en dag - så bear with me))
PS: tror jeg er med på hvad der sker med den der opdeling af char-filen (hvilket slet ikke er min hensigt - hensigt er jo at outputte Profil-ID til Profil-txt-feltet som følge af combobox-valg)
Heyy.. Buzz min ven :) - tilbage fra en forlænget wkd (der trods mit svar kl 13 den onsdag, egentlig først startede torsdag morgen, men lad det nu ligge så det ikke irriterer fremtidige læsere af tråden endnu mere .. hehe)
Jeg har kigget lidt på det nu, og fundet ud af at jeg har mistet det mere grundliggende overblik, på hvorfor jeg gør som jeg gør (for meget hovedløst prøven af, fra min side)
Dette underbygges af at jeg egentlig troede at jeg gennem de C#-tuts jeg havde kørt, havde klædt mig selv nok på (men så alligevel ikke)
I mellemtiden har jeg fået godkendt et MS 70-515-kursus, hvor jeg kommer right down this alley ænivæis.. Så vil også spørge denne kommende underviser (efter 30/4) til råds omkring problemstillingen (herunder forståelsen af control-selection, og hvordan man bruger det i forb. med MsSql)
Du vil selvfølgelig få point udfra hvor meget af dine forslag jeg kommer til at bruge i den endelige kodestump :)) /vh
(PS: cool med det lidt formelle/positive 'vh'-salutering - jeg har desværre mødt lidt for meget negativitet og disrespekt herinde før i tiden - så thumbs up.. )
Det kommer helt an på hvordan folk spørger og om de virkelig prøver. Tror mange er trætte af folk der tror det at programmere bare er at sætte lidt sammen og så har man bygget "Windows 12".
:)) -> opdatering: er startet på kurset, og vender det med underviseren lidt mere i den kommende dage (men har allerede fået en tilkendegivelse på at han bør kunne løse problemet)
Har nu snakket med min underviser, og det hele er udmøntet i at vi begge er blevet ret enige om at WPF er lidt af et eksperiment for MS. Hvis der er nogle der bider på, vil formatet overleve.
Ellers påbegynder jeg nu at lave det hele om i Windows Forms med AJAX/og eller JQuery (det platformsuafhængige aspekt tiltaler mig også da jeg jeg så vil forbedre mig med JQuery (hvilket er godt for min profil)).
Om jeg kommer til at bruge noget af det udvekslede kode herover er derfor tvivlsomt.
.. halvt point gives således, for det du har hjulpet med so far :)
Der er simpelthen skrevet for mange Win Forms apps til at det sker.
Win32 API GUI er jo ogsaa stadig supporteret selvom det jo maa naerme sig 20 aars jubilaeum.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.