[Tapuz .Net] Getting WPF's FlowDocument and FlowDoucmentReader MouseOver text

29 בינואר 2008

Question: I've got a WPF FlowDocument in a FlowDocumentReader. On mouse left button click I need to get the "word" that the user clicked on. How can I get that "word"?   Answer: First, let's understand the problem. To those of you not familiar with the WPF FlowDocument check out this XAML file: www.sneath.org/tim/chocolate.xaml If you've got .Net 3.0 installed on your machine, it will automatically render and run it inside your browser. We can change the Font-size with the top-right scroller.  Fundamentally the FlowDocument with it's various presenters is meant to display...
2 תגובות

חוויות של יועץ דוט נט עצמאי – פרודוקס הטכנולוגיות חדשות

27 בינואר 2008

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

Question from Tapuz .Net forum: Nested DataBound Controls

24 בינואר 2008

שאלה: יש לנו GridView שנטען מ-DataTable כלשהו ובתוכו יש TemplateField עם DropDownList. הרשימה של ה- DropDownList   אמורה להתמלא מ Datatable אחר. איך אני טוען את ה DropDownList  לרשימה נפרדת משלו ?   תשובה: שאלה מצויינת שבאמת מראה שהגעת לעומק הקורה בעבודה עם ASP.Net. נבין קודם את הבעיה ואז נתמקד בפתרון.נתחיל בליצור דף ASP.Net חדש. לדף נוסיף GridView. ב-GridView שלנו נרצה להציג תמונות של בקבוקי וויסקי, השם שלהם ונאפשר למשתמש לבחור איפה נחזיק את הבקבוק וויסקי שלנו. נתחיל בליצור מחלקה שתייצג את הבקבוקי וויסקי שלנו. ניצור קובץ חדש בשם WhiskeyBottle.cs. (יש כמובן לציין שבדוגמה...
אין תגובות

Question from Tapuz .Net forum: Custom ASP.Net Calendar Control that Highlights Days

23 בינואר 2008

שאלה: איך אפשר לצבוע ימים נבחרים בפקד Calendar? ראיתי שיש אירוע DayRender ושם אפשר לצבוע ימים, זאת דרך טובה?   תשובה: שאלה מצויינת שנותנת לנו לראות איך ירושה ב-Web Controls יכולה לתרום המון לבהירות של הקוד שלנו. בואו קודם נבין את הבעיה. ניצור דף חדש ונוסיף לו פקד Calendar. נוסיף את פקד ה-Calendar לדף:   וככה זה יראה בדפדפן: נעשה שינוי קטן שנוכל לראות את הלוח-שנה בצורה קצת יותר ברורה ונשנה את הצבעים למשהו יותר בולט. ובדפדפן: עכשיו נרצה למשל...
2 תגובות

חוויות של יועץ עצמאי בתחום הדוט נט – חיוב יתר

22 בינואר 2008

החיים שלי היו הרבה יותר פשוטים לפני שנה. עברתי מעבודה במגזר הבטחוני ללהיות יועץ עצמאי.לפי רשומות מס הכנסה פתחתי תיק כיועץ טכנולוגי ב-22 לדצמבר 2006, כלומר לפני שנה שזה בערך עשר דקות אחרי היום האחרון שלי כשכיר. בפוסט הזה ובתקווה באחרים שיבואו אחריו אפרט על החוויות שלי כ*תופים* יועץ Net. בכיר *תופים*. (יש לקרוא עם הד דרמטי: בכי, כיר, יר, ר) If You're Not A Part Of The Solution, There's Good Money To Be Made In Prolonging The Problem   הכי חשוב מבחינתי בפוסטים האלו זה כנות.כמו בחיים האמיתיים - אני לא הולך לצנזר...

Question from Tapuz .Net forum: Copy to Output directory, Build Action And Custom Tool

20 בינואר 2008

שאלה: יש לי אפליקציה שצריכה להריץ קובץ שהוא חלק מהפרוייקט, אבל אני לא יודע איזה נתיב לתת לה. אני לא מוצא את הקובץ בשום נתיב שהוא לא אבסולוטי. כמו כן, יש לי תמונות כחלק מהאפליקציה, וגם אותם אני לא מצליח להציג בלי נתיב אבסולוטי.   תשובה: שאלה מצויינת שתיתן לנו מבט יותר מעמיק לגבי שימוש בקבצים כחלק מהפרוייקטים שלנו. בואו נפתח פרוייקט Console חדש. נראה מה קיבלנו ב-Solution Explorer: קיבלנו קובץ בשם Program.cs שכמו שאנחנו יודעים, מכיל את נקודת הכניסה (Main) של התוכנית. using System; using System.Collections.Generic; using System.Linq; using System.Text;   namespace...
5 תגובות

Question from Tapuz .Net forum: Extracting data from an HTML File

15 בינואר 2008

שאלה: מה הדרך הנכונה לעבודה מול תוכן XHTML?לדוגמה אני טוען תכן xhtml מקובץ ורוצה לבצע בו מספר שינויים לפני שאני מציג אותו ללקוח.מה שאני עושה כיום זה טוען אותו כxml ומשתמש במחלקות ממשפחת XmlDocument וXDocument, ויש בזה הרבה חסרונות. יש דרך טובה יותר? (Net 3.5.)   תשובה: יש כמה אפשרויות, אבל אין ביניהן דרך טובה. היו לי ה-מ-ו-ן פרוייקטים שבהן ביצעתי ניתוח טקסטואלי ל-HTML, והמסקנה שלי שזה פשוט תחום כל-כך נידח שאף אחד לא חשב על פתרון טוב. אופציה א' היא לעבוד איתו "כאילו" הוא XML. למה "כאילו" כי HTML הוא 100% מהזמן לא XML...
תגיות: , , ,
אין תגובות

Question from Tapuz .Net Forum: Waiting for a process to close

8 בינואר 2008

שאלה: אני צריך להפעיל תוכנה חיצונית מהקוד שלי, כך ש: 1- החלון יופיע מעל החלון שלי 2- חלון האב לא יהיה זמין כל עוד פתוח החלון השני משהו כמו ההתנהגות של MessageBox. איך אפשר לעשות כזה דבר?   תשובה: נשמע שיש לך אחת משתי אפשרויות: לעבוד חזק מאוד עם ה-OS או לבנות ממנגנון משלך. אישית ,אני נמנע מעבודה עם ה-OS ככל שניתן שיש אלטרנטיבות פשוטות וקלות בדוט נט. מבחינת כתיבת מנגנון שלך, תוכל לבנות משהו יחסית פשוט.הרי אתה מתחיל את התוכנה החיצונית באמצעות Process.Start, אז אתה יודע את השם של ה-EXE שלך.תוכל להשתמש ב-Process.WaitForExit ולהמתין ל-Process שהדלקת...
תגיות: ,
3 תגובות

Question from Tapuz .Net forum: Linq to SQL OnValidate partial method doesn't fire

2 בינואר 2008

שאלה: יצרתי partial class עם שם הטבלה שלי, product במקרה זה, ואז  implements the OnValidate() partial methodושם כתבתי את החוקים שלי לפי הצורך.שמתי BreakPoint בתוך OnValidate ואני רואה שהיא לא נפגעת. כלומר, בזמן שמירה של השורה, המתודה שלי לא נקראת, ולכן כל העסק לא עובד.האם יש איזה רעיון למה?     public partial class Product     {         public void OnValidate()         {             if ((this.Discontinued == true) && (this.UnitsOnOrder > 0))             {                 throw new ArgumentException("Reorder level cannot be greater then 0 when you discontinue");             }         }     }   תשובה: בוא נבין קודם...
אין תגובות