מחפש event מסויים...

Zeliran

New member
מחפש event מסויים...

איך אני יכול לדעת מתי המשתמש מוסיף נתון לDataGrid בשורה חדשה? ניתן גם לדעת באיזה שורה הוא הכניס את הנתון החדש?
 

adam222

New member
אם זה בשורה חדשה

זה לא דורש לחיצה על משהו כמו "ADD"?
 

Zeliran

New member
../images/Emo35.gif

אני משתמש ב Windows Forms לכן המשתמש יכול להוסיף מתי שהוא וצה בלי "להודיע" לי על זה...
 

Zeliran

New member
עדכון טבלה שלמה

יש דרך "מובנת" או כזו שבדרך כלל משתמשים בה בשביל לעדכן טבלה שלמה או שפשוט חייבים לעבור בלולאה על כל ה DataSet ולעשות לכל שורה UPDATE?
 

gilad g

New member
ל-DataAdapter יש מתודה ששמה Fill

אני חושב שהיא עושה את זה בשבילך
 

Zeliran

New member
לא לזה התכוונתי...

הכוונה היא לעדכן את ה DataBase ולא את ה DataSet... יש לי כבר את ה dataset שאני רוצה לשמור אבל אני צריך לעדכן את הבסיס נתונים.. הממ.. עכשיו בדיוק נזכרתי, ל DataDapter יש גם מתודת UPDATE, אני יכול באמצעותה להשתמש גם ב dataset כד'י לעדכן את הטבלה שבמסד נתונים ב"מכה אחת"?
 

gilad g

New member
אוופס ../images/Emo13.gif

התכוונתי ל-update
כן, זוהי המטרה העיקרית של DataAdapter.Update - שתוכל לעדכן את הטבלה שלך במכה אחת.
 

Zeliran

New member
../images/Emo51.gif - רק שיש בעיה קטנה...

כתבתי את הקוד הבא:
OleDbConnection con = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\\IIS\\scheduler\\scheduler.mdb"); OleDbDataAdapter adap = new OleDbDataAdapter("SELECT * FROM "+Form1.name, con); con.Open(); adap.Update(ds.Tables[Form1.name]); con.Close();​
אבל כשאני מנסה להריץ אותו, אני מקבל שגיאה בפקודת ה UPDATE שאומרת לי:
An unhandled exception of type 'System.ArgumentNullException' occurred in system.data.dll Additional information: Value cannot be null.​
מה זה אמור להביע
 

Zeliran

New member
לא הגיוני כי אני בעצם...

מכניס נתונים לכל העמודות, ואין עמודה ריקה או נתון ריק בשורה מסויימת..
 

gilad g

New member
יכול להיות שזה בגלל

שלא השתמשת ב-CommandBuilder -
OleDbConnection con = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\\IIS\\scheduler\\scheduler.mdb"); OleDbDataAdapter adap = new OleDbDataAdapter("SELECT * FROM "+Form1.name, con); OleDbCommandBuilder build = new OleDbCommandBuilder(adap); con.Open(); adap.Update(ds.Tables[Form1.name]); con.Close();​
 
למעלה