Har ett gäng kontroller som jag bundit till ett antal DataViews. Ingen verkar sugen på en reply ..... !? Om jag ser något bra exempel så skall jag ropa till och posta det här. Att ingen svarar beror nog säkert på att de som läst inlägget inte har något i "bakfickan". Vet inte om "DataView.ListChanged Event" gör det du vill men du kan ju ta en titt om du inte redan gjort det. Ingen framgång där inte ......... Nu ändrar jag rubrik på inlägget och frågar följande ...... du kan använda en currencymanager för att känna av om något ändras ok .. varit och nosat på det utan att seriöst provat ....... varför ? .... jo jag tänkte att inte tusan måste man skapa en eventhandler för en så grundläggande sak som att hålla koll på ev. ändring i en datasamling ..... fast varför gör du något special överhuvudtaget? Har använt update på adapter i andra sektioner i mitt projekt vilket funkat bra men nu när man binder kontroller funkar fan inget alls ......Uppdatera databas via bunden kontroll
Allt funkar bra .... vad jag inte lyckas med är att fånga en ev. ändring i posten ...
När jag ändrar en item på en kund och byter kund och går sedan tillbaka igen så ligger ändringen kvar där som den ska, men jag lyckas inte fånga upp den innan jag kör en update på adaptern ...
Vill ju gärna fråga om ändring ska göras innan den exekveras !
Nån som vet hur ?
Här är lite kod som jag trodde skulle funka ... :o(
<code>
Private Sub txtKund_id_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles txtKund_id.KeyDown
If e.KeyCode = Keys.Return Then
'kollar efter ev.ändringar
checkchange()
'sätter nya filter
myKundview.RowFilter = "kund_id = " & CInt(txtKund_id.Text)
myKundview.RowStateFilter = DataViewRowState.CurrentRows
myKontaktview.RowFilter = "kund_id = " & CInt(txtKund_id.Text)
myKontaktview.RowStateFilter = DataViewRowState.CurrentRows
myRabattview.RowFilter = "kund_id = " & CInt(txtKund_id.Text)
myRabattview.RowStateFilter = DataViewRowState.CurrentRows
myProduktview.RowFilter = "kund_id = " & CInt(txtKund_id.Text)
myProduktview.RowStateFilter = DataViewRowState.CurrentRows
End If
End Sub
Sub checkchange()
myKundview.RowStateFilter = DataViewRowState.ModifiedOriginal
If myKundview.Count <> 0 Then
MsgBox("vill du spara ändrade kunddata ?")
End If
myKundview.RowStateFilter = DataViewRowState.OriginalRows
End Sub
</code>Sv: Är post ändrad ??
Ser på många forum att just problem med uppdateringar är vanligt ...... ja inte har det blivit lättare och tydligare med datahanteringen genom .NET .. snarare tvärtom ......suck Sv: Är post ändrad ??
Sv: Är post ändrad ??
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpref/html/frlrfsystemdatadataviewclasslistchangedtopic.asp
eller så kanske "DataAdapter Events" kan vara något och då tänker jag främst på "RowUpdating"
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpguide/html/cpconAddingRemovingADONETProviderEvents.asp
//
JanneSv: Är post ändrad ??
Men rätta mej om jag har fel, om man binder tex. en radiobutton till en dataview .....
Om man då markera detta, ändras inte då värdet i aktuell dataview direkt eller ???
Men kör jag ...
<code>
myKundview.Rowfilter = DataViewRowState.ModifiedOriginal
</code>
Så får jag 0 på myKundview.count .....
Varför är det mest elementära inom datakoppling inom .NET rena grekiskan .......????Uppdatera databas via bunden kontroll
Är det nån som har ett exempel på en fungerade kod med en bunden kontroll som vid postförflyttning känner av ändring och frågar om det skall sparas ........ ?????Sv: Uppdatera databas via bunden kontroll
tex://c#
CurrencyManager cm = (CurrencyManager)this.BindingContext[myKundview.Table];
cm.CurrentChanged +=new EventHandler(cm_CurrentChanged);
cm.ItemChanged +=new ItemChangedEventHandler(cm_ItemChanged);
cm.PositionChanged +=new EventHandler(cm_PositionChanged);
//Roger
Sv: Uppdatera databas via bunden kontroll
ska testa ikväll ... takc för ditt input roggan .... kommer igen med resultat ....Sv: Uppdatera databas via bunden kontroll
gör du mydataadapter.Update(mydatatable); så insertas nya och uppdateras ändrade poster..
anropa det via en sparaknapp eller vid navigering om du alltid vill spara nya ändringar.
är inget ändrat så kommer inget att hända.
du måste absolut inte hålla på och meka med rowversions osv..
//RogerSv: Uppdatera databas via bunden kontroll
Vad jag har gjort är att skapa dataset från adapter ....... skapa dataview från samma dataset ..... men ingen uppdatering sker ........ ändringarna synd i dataview när jag växlar mellan olika poster men när jag vill spara så sparas det inte ...... uppdateras jag settet är ändringen inte med ........
men har du ett exempel på en enkel bind med update som du kan länka till så vore ja tacksam ........