דילוג לתוכן

ארכיון code613m

ארכיון האתר הקודם והחביב קוד-613

1.3k נושאים 9.6k פוסטים
  • WPF: comboBox

    3
    0 הצבעות
    3 פוסטים
    300 צפיות
    A

    תודה רבה!
    בעקבות דבריך מצאתי אפשרות נוספת:
    להכנס לitem שאני רוצה כברירת מחדל ולכתוב:

    Selector.IsSelected="True"

    הוא אשר אמרת - ישנם דרכים רבות..

    פורסם במקור בפורום CODE613 ב08/07/2015 13:37 (+03:00)

  • 0 הצבעות
    2 פוסטים
    210 צפיות
    S

    אם המשתמש מבצע שינוי בטבלה שדורש יצירה של הטבלה מחדש התוכנה חוסמת כברירת מחדל את השינוי כי יכולות להיות לזה השלכות מסוימות (למי שעובד עם change tracking).
    בכל אופן זה ענין של הגדרה, נקה את תיבת הסימון הבאה והכל יבוא על מקומו בשלום.
    Tools > Options > Designers > Prevent saving changes that require the table re-creation

    פורסם במקור בפורום CODE613 ב07/07/2015 02:07 (+03:00)

  • יצירת דוחות

    9
    0 הצבעות
    9 פוסטים
    542 צפיות
    A

    @ארכיטקט

    ראה כאן כעת אנו בפיתוח וובי של כל הסיפור הזה, ומתיימרים להיות בלי נדר הגוגל של מסדי הנתונים הפרטיים. חיפוש שייאפשר למשתמש לבצע כל שאילתה אפשרית.

    אז אם אתה מתכוון להתחרות בי אשמח תמיד ללמוד ממתחרים :lol: :lol: :lol: :lol:

    עד שאצליח להיות ברמה של מתחרה - הדרך עוד ארוכה :lol:

    בכל אופן, אני עכשיו מתחיל ללמוד את הנושא הזה, כך שאשמח לעזור ולהשתתף בפרוייקט המרשים שהצגת שם.
    אם אתה רוצה שאנסה לעשות משהו ספציפי - אתה מוזמן לומר לי.
    כך גם אני יוכל לעזור ולתרום - ולא רק לשאול שאלות.
    (אבל אל תשכח שאני עוד רחוק מהרמה שלכם - אבל אני מקווה להגיע אליה מהר :lol: :lol: )

    פורסם במקור בפורום CODE613 ב08/07/2015 10:28 (+03:00)

  • בעיה בהצגת הID במתודת ToString

    6
    0 הצבעות
    6 פוסטים
    320 צפיות
    dovidD

    @avr416

    דוד ל.ט. סליחה על הטרחה לשווא 😢

    שום לשווא. כיף כל פעם.

    @avr416

    ואת המרווח כנראה עושים עם פסיק, נכון?

    כן. מה שאחרי הנקודתיים זה כמו מה שכותבים בסוגריים של הToString, שזה פורמט (מטבע, תאריך, מותאם אישית) שם אם תכתוב סתם מספר זה פשוט מחליף את הערך במפר הזה.

    פורסם במקור בפורום CODE613 ב06/07/2015 15:04 (+03:00)

  • חלון כפול בOpenFileDialog

    2
    0 הצבעות
    2 פוסטים
    203 צפיות
    dovidD

    תמחק את שורה 4.
    אתה קורא לפונקציה ShowDialog() גם בתנאי שאח"כ.

    פורסם במקור בפורום CODE613 ב05/07/2015 20:37 (+03:00)

  • serialization: קובץ XML עם ג'יבריש

    7
    0 הצבעות
    7 פוסטים
    522 צפיות
    dovidD

    מעניין מאוד! תודה אברהם.
    חיפשתי מקורות ומצאתי (http://stackoverflow.com/a/267904/1271037).

    הBinarySerialization שונה מאוד מהXML בנקודה זו: הוא ממש מצלם את מצב האובייקט (המשתנים) ובכלל לא ניגש דרך הset של המאפיינים, ואף יצירת האובייקט נעשית בדרך האקרית ללא הפעלת הCounstactor.

    פורסם במקור בפורום CODE613 ב06/07/2015 16:32 (+03:00)

  • יצירת פקד באמצעות קוד - אקסס

    12
    0 הצבעות
    12 פוסטים
    686 צפיות
    H

    אשמח אם תמצא זמן.
    ושיהיה לך הצלחה בכל אופן (גם אם לא תמצא זמן)

    פורסם במקור בפורום CODE613 ב09/08/2015 18:07 (+03:00)

  • serialization: בינארי או XML?

    3
    0 הצבעות
    3 פוסטים
    248 צפיות
    dovidD

    בעת בדיקת דברי אברהם בקשר להבדל בין הXML לבינארי לגבי השגיאה בset של property והעידר הצורך בבנאי ללא פרמטרים בבינארי, ההבדל התחדד לי.
    ראיתי את זה שזה מאוד ספציפי לשאלה: http://stackoverflow.com/a/4743878/1271037
    ההבדל הנוסף המשמעותי נמצא בתשובה לשאלה האחרת של אברהם, יעויין: http://code.613m.org/viewtopic.php?f=1&t=808&p=4924#p4924

    פורסם במקור בפורום CODE613 ב06/07/2015 16:33 (+03:00)

  • מילוי קומבובוקס בWPF מקובץ JSON

    2
    0 הצבעות
    2 פוסטים
    298 צפיות
    M

    בס"ד נמצאה הפתרון, כדלהלן:

    using Newtonsoft.Json; private void Window_Loaded(object sender, RoutedEventArgs e) { string url = "https://api.myjson.com/bins/30fkq"; using (var wc = new WebClient()) { var strJsonData = string.Empty; try { strJsonData = wc.DownloadString(url); var students = JsonConvert.DeserializeObject<Students>(strJsonData); cboStudents.ItemsSource = students.Student; cboStudents.DisplayMemberPath = "Surname"; } catch (Exception ex) { System.Windows.MessageBox.Show(ex.ToString()); } } public class Students { public Student[] Student { get; set; } } public class Student { public string Surname { get; set; } public string GivenName { get; set; } public long Age { get; set; } }

    פורסם במקור בפורום CODE613 ב04/07/2015 21:52 (+03:00)

  • 0 הצבעות
    6 פוסטים
    372 צפיות
    S

    @דוד ל.ט.

    כיום אפשר.
    פשוט תתקין Visual Studio ותתחיל.
    תראה פה תיעוד רשמי: https://msdn.microsoft.com/en-us/library/dn771552.aspx#NET.

    אבל אני לא אוכל ללוותך בעניין מהעדר ידע וק"ו נסיון.

    הלוואי וזה היה נכון, למק אי אפשר בכלל לפתח בפיסי ולאייפון ואנדרואיד אפשר עם xamarin שמגיע גם כתוסף ל vs.
    אבל עדיין לios ה build צריך להיות על מחשב mac שזה לא חוסך הרבה בהתחשב בעובדה שרישיון לxamarin לשנה לגירסה של הvs עולה כמו מקבוק . . . (1000$)
    אני מחזיק macbook אבל לא מת על ה xcode אז בסוף הוא יותר חיית מחמד . . . אז אני מפתח בphonegap 😞

    פורסם במקור בפורום CODE613 ב04/07/2015 22:47 (+03:00)

  • אקסס - עבודה נקייה מול SQL SERVER

    2
    2 הצבעות
    2 פוסטים
    261 צפיות
    א

    טוב אז אחרי חודשים של סיוטים בלילות, סוף סוף מצאתי את החלון שנותן מבט אל תוך הקרביים של SQL וגיליתי עד כמה אקסס צריך לפעמים חינוך מחדש....
    אז כדי להסתכל מה קורה בזמן אמת בשרת ה SQL שלכם יש כמה מוניטורים בשוק, אבל בשבילי המוניטור הכי טוב שמצאתי הוא זה:

    SELECT SPID = er.session_id ,STATUS = ses.STATUS ,[Login] = ses.login_name ,Host = ses.host_name ,BlkBy = er.blocking_session_id ,DBName = DB_Name(er.database_id) ,CommandType = er.command ,SQLStatement = st.text ,ObjectName = OBJECT_NAME(st.objectid) ,ElapsedMS = er.total_elapsed_time ,CPUTime = er.cpu_time ,IOReads = er.logical_reads + er.reads ,IOWrites = er.writes ,LastWaitType = er.last_wait_type ,StartTime = er.start_time ,Protocol = con.net_transport ,ConnectionWrites = con.num_writes ,ConnectionReads = con.num_reads ,ClientAddress = con.client_net_address ,Authentication = con.auth_scheme FROM sys.dm_exec_requests er OUTER APPLY sys.dm_exec_sql_text(er.sql_handle) st LEFT JOIN sys.dm_exec_sessions ses ON ses.session_id = er.session_id LEFT JOIN sys.dm_exec_connections con ON con.session_id = ses.session_id where ses.status='running'

    יש גם פרוצדורות שמראות קונקשנים פתוחים ועוד, אני משאיר את זה לסופטס, אבל הקוד שציטטתי מקודם ממש הציל את חיי.

    אז ככה:
    אם אתם רואים שלוקח לסלקט הזה זמן למלא את הרשומות, מצבכם גרוע מאוד מאוד, בידקו היטיב אם אתם לא נוהגים קלות ראש בכל מה שנוגע לתישאול מסד הנתונים.
    אם אתם רואים שם בעמודה LastWaitType את הערך: ASYNC_NETWORK_IO מצבכם גם כן לא טוב בעליל, זה אומר שאקסס או מי שזה לא יהיה משאיר עיסקה פתוחה, כדי שמתי שהוא צריך הוא ימשוך רשומות בקלות, בלי תקורה של חיבור למסד הנתונים. למרבה הטמטום הדבר הזה עשוי לנעול רשומות ולמנוע עדכונים, אז תיזהרו לנפשכם מאוד.

    כמו"כ אם הוא מכיל את הערך: LCK_M_IX (בשאילתת UPDATE) סימן שיש נעילות שמעכבות עדכונים, ובדרך כלל רשומות אחרות המכילות את הערך ASYNC_NETWORK_IO אשמות בכך.

    ההתנהגות של אקסס בנושא הזה לא לגמרי צפויה, ולכן המלצות יבואו לפי הבעיות, כרגע מה שאני יודע זה לא ליצור לו טופס עם רשומות מרובות ולבצע מיקור של סלקט עם כוכבית (כלומר משיכת כל המידע מכל העמודות) אלא אם כן אתם דואגים במפורש שכל הרשומות יימשכו והעיסקה מול מסד הנתונים תיסגר (בדרך כלל אם עושים לו MoveLast זה עוזר)
    אז נכון, אקסס זה כבר לא כלי שמתאים לעבודה עם מאות אלפי רשומות, אולם עם זאת כדאי לדעת איך באמת מנוע של דטה בייס עובד, ולהכיר לעומק את כל סוגי העיסקאות.
    מצפה מהמומחים להמשיך ולהחכימנו בעניני מסדי נתונים.

    פורסם במקור בפורום CODE613 ב27/08/2015 00:08 (+03:00)

  • 0 הצבעות
    5 פוסטים
    288 צפיות
    A

    בסייעתא דשמיא ובהשתדלותנו הכל הסתדר!!
    כיביתי את המחשב והדלקתי מחדש, והכל בא על מקומו בשלום!
    כנראה, בגלל שהתוכנה קרסה באמצע, ולא לחצתי על "סגור תכנית" התכנית המשיכה לפעול מאחורי הקלעים, וכך כשניסיתי אח"כ לקרוא לה היא הייתה תפוסה.
    תודה רבה לכל המנסים והמשתדלים לעזור- תבורכו מן השמים!

    פורסם במקור בפורום CODE613 ב02/07/2015 10:46 (+03:00)

  • 0 הצבעות
    8 פוסטים
    438 צפיות
    A

    @דוד ל.ט.

    אברהם בלתי אפשרי לענות ככה על מבול שאלות. אני מבקש: כל שאלה אשכול. מצידי פתח מאה ביום - רק שאלות שמממש תלויות זו בזו באותו הודעה.

    מקבל את ההערה!
    @דוד ל.ט.

    א. הצבה בDataContext נותנת שגיאה:
    תראה את הקוד שעשית, מן הסתם שכחת new.
    ב. אין ברשימה אוטומטית DataCintext כי אם DataContextProperty.
    אתה כנראה כותב שם חלון ולא מופע. אם תכתוב this. או ללא שם בכלל אז תראה DataContext ברשימה.

    הקוד שעשיתי הוא:

    public MainWindow() { InitializeComponent(); Class2 cl = new Class2(); Grid.DataContext = cl; }

    על זה הוא נתן לי את השגיאה הנ"ל. אבל הבנתי שהטעות שלי היא בגלל שלא נתתי שם לgrid, אחרי שנתתי לו שם וכתבתי:

    grid1.DataContext = cl;

    הכל בא על מקומו בשלום! (זה מה שהתכוונת כנראה שלא כתבתי שם של מופע? כי ניסיתי עם this וזה לא עזר.)

    פורסם במקור בפורום CODE613 ב01/07/2015 13:45 (+03:00)

  • ConnectionString הסיוט שלא נגמר

    1
    1 הצבעות
    1 פוסטים
    214 צפיות
    אין תגובות
  • איך אתם מעצבים טופס בWPF?

    12
    0 הצבעות
    12 פוסטים
    790 צפיות
    A

    השתמשתי עכשיו בפקד HeaderedContentControl שהמלצת עליו
    ואכן - אין בפי מילים!! פקד מעולה ונוח!!
    תודה רבה!

    פורסם במקור בפורום CODE613 ב21/07/2015 21:46 (+03:00)

  • מה הבעיה במתודה הבאה:

    5
    0 הצבעות
    5 פוסטים
    311 צפיות
    S

    דוד, כל הכבוד על התשובות מאירות העיניים שלך, הלוואי והיה לי אחד כזה בשנותי הראשונות . . .

    @avr416

    מה זה DateDif?
    אני לא מכיר את שפת ויזואל בייסיק..
    ואינני מכיר מתודה שממשת את זה בC#.

    כתבת את הלוגיקה, אבל השארת פונקציה שעושה חישוב ספציפי, בפעם הבאה שתצטרך חישוב מרווח בין חודשים תעשה העתק-הדבק?
    בשם עיקרון ה Reusability היה עדיף שתכין מזה פונקציה כללית, לדוגמה : תן פרמטר נוסף שישמש כ "תאריך עד", תן שם גנרי יותר ותשים בקלאס public static וכו'
    ועוד משהו שארכיטקט כתב פה בימים האחרונים, מתכנת צריך לרכוש את אומנות הגיגול, זה חלק מארגז הכלים הבסיסי למתכנת, בגיגול קצר היית מוצא את זה:

    //---------------------------------------------------------------------------------------- // Copyright © 2003 - 2013 Tangible Software Solutions Inc. // This class can be used by anyone provided that the copyright notice remains intact. // // This class simulates the behavior of the classic VB 'DateDiff' function. //---------------------------------------------------------------------------------------- public static partial class Simulate { public enum DateInterval { Day, DayOfYear, Hour, Minute, Month, Quarter, Second, Weekday, WeekOfYear, Year } public static long DateDiff(DateInterval intervalType, System.DateTime dateOne, System.DateTime dateTwo) { switch (intervalType) { case DateInterval.Day: case DateInterval.DayOfYear: System.TimeSpan spanForDays = dateTwo - dateOne; return (long)spanForDays.TotalDays; case DateInterval.Hour: System.TimeSpan spanForHours = dateTwo - dateOne; return (long)spanForHours.TotalHours; case DateInterval.Minute: System.TimeSpan spanForMinutes = dateTwo - dateOne; return (long)spanForMinutes.TotalMinutes; case DateInterval.Month: return ((dateTwo.Year - dateOne.Year) * 12) + (dateTwo.Month - dateOne.Month); case DateInterval.Quarter: long dateOneQuarter = (long)System.Math.Ceiling(dateOne.Month / 3.0); long dateTwoQuarter = (long)System.Math.Ceiling(dateTwo.Month / 3.0); return (4 * (dateTwo.Year - dateOne.Year)) + dateTwoQuarter - dateOneQuarter; case DateInterval.Second: System.TimeSpan spanForSeconds = dateTwo - dateOne; return (long)spanForSeconds.TotalSeconds; case DateInterval.Weekday: System.TimeSpan spanForWeekdays = dateTwo - dateOne; return (long)(spanForWeekdays.TotalDays / 7.0); case DateInterval.WeekOfYear: System.DateTime dateOneModified = dateOne; System.DateTime dateTwoModified = dateTwo; while (dateTwoModified.DayOfWeek != System.Globalization.DateTimeFormatInfo.CurrentInfo.FirstDayOfWeek) { dateTwoModified = dateTwoModified.AddDays(-1); } while (dateOneModified.DayOfWeek != System.Globalization.DateTimeFormatInfo.CurrentInfo.FirstDayOfWeek) { dateOneModified = dateOneModified.AddDays(-1); } System.TimeSpan spanForWeekOfYear = dateTwoModified - dateOneModified; return (long)(spanForWeekOfYear.TotalDays / 7.0); case DateInterval.Year: return dateTwo.Year - dateOne.Year; default: return 0; } } }

    פורסם במקור בפורום CODE613 ב02/07/2015 12:37 (+03:00)

  • גיל לפי תאריך עברי

    2
    0 הצבעות
    2 פוסטים
    338 צפיות
    א

    כאן מישהו פתר את כל בעיות הלוח העברי לנצח נצחים.

    פורסם במקור בפורום CODE613 ב27/06/2015 22:45 (+03:00)

  • מה ההבדל בין מתודת Equals לcompareTo?

    5
    0 הצבעות
    5 פוסטים
    360 צפיות
    dovidD

    אני מאוד מאוד מסכים עם ארכיטקט בקטע של גוגל.
    התשובה היא שבעוד שEqual רק אומר לך זהות כן/לא, CompareTo אומר לך אם הערך שווה, גדול, או קטן. דבר שאפשרי לדעת בגלל שהאובייקט ממש IComparble ותחת הממשק הזה הוא מממש מתודה שמחליטה על ערך זר ביחס לערך הנוכחי אם הוא קטן יותר או גדול יותר.
    המתודה CompareTo היא כמו האופרטורים > < רק שהם סטטיים (הם יעבדו - אם הם מומשו - גם במידה ושתי המשתנים הם null). מאידך מחלקה חיצונית שרוצה לבדוק שויון בין שתי מופעים של מחלקה אחר לא יכולה להשתמש באופרטורי ההשוואה כל עוד היא לא יודעת שהטיפוס מיישם אותם. משא"כ בCompareTo היא יכולה אחרי וידוא שממומש הממשק IComparable שכופה את קיום המתודה הנ"ל. לכן Array.Sort משתמש בCompareTo.

    פורסם במקור בפורום CODE613 ב28/06/2015 12:02 (+03:00)

  • זריקת חריג לערך שאינו מתאים

    4
    0 הצבעות
    4 פוסטים
    275 צפיות
    dovidD

    ArgumentNullException.
    אגב אני בקושי זורק שגיאות ואם כן אז פשוט Exeption וזהו... אז אני לא מורה עם דוגמה אישית...

    פורסם במקור בפורום CODE613 ב28/06/2015 12:12 (+03:00)

  • כנסים הרצאות וימי עיון

    6
    0 הצבעות
    6 פוסטים
    465 צפיות
    A

    @Zvi Good

    [size=150:38ylj6e0]הצעה לפורום[/size:38ylj6e0]

    היות ולאחרונה שמעתי על כמה מפגשים והרצאות בתחום התכנות טכנולוגיות סטארטאפים וכד'
    וכשבאתי להירשם ההרשמה כבר נסגרה... 😞

    ולכך הצעתי היא לפתוח אשכול מיוחד בעמוד הראשי שיתמקד בכנסים ומפגשים בתחום שנערכים מעת לעת
    וכך כולנו נדע על כך בזמן ומי שיהיה מעוניין (להתקדם) יספיק להירשם לפני סגירת הרישום.

    ביום רביעי ו' מנחם אב יתקיים כנס של מיקרוסופט ישראל ברעננה, בנושא פיתוח באמצעות AZURE.
    אם זה מעניין אותך - כל הפרטים כאן.

    אבל אני לא מבטיח שיהיה רוגלך :lol: :lol:

    פורסם במקור בפורום CODE613 ב12/07/2015 20:59 (+03:00)

בא תתחבר לדף היומי!