WPF פקדים מותאמים אישית
-
איך אני יכול לעצב פקד מותאם אישית בתוך המעצב הויזואלי?
למשל אני רוצה לעשות מחלקה שתירש את מחלקת GRID ואז להוסיף במחלקה זו כמה פקדים כמו פאנלים וכדומה שישבו בתוך הגריד, אחר כך אני אוסיף את הפקד-המחלקה הזו לחלון שלי ושאוכל להוסיף לתוך הפאנל שבתוך הפקד למשל לחצן.תודה לכולם.
פורסם במקור בפורום CODE613 ב27/11/2013 13:25 (+02:00)
-
השאלה הראשונה כללית מידי, ויש לה הרבה תשובות לפי הצורך.
השאלה הספציפית עם הGRID, ובכן א"א ל"טמפלט" גריד.אבל השאלה מה אתה רוצה, נניח אתה רוצה שבגריד יהיה למטה שורה נוספת עם כפתור,
אז אתה אמור לעטוף את הגריד עם גריד אחר או פקד מותאם אישית שמכיל את הכפתור הזה.פורסם במקור בפורום CODE613 ב28/11/2013 10:40 (+02:00)
-
מצורף הקוד שכתבתי, אני בעצם מנסה לבנות Split Container לצורך זה יצרתי מחלקה יורשת מגריד ובתוך הגריד יש גריד ימני וגריד שמאלי. אם תוסיף את הפקד הזה לחלון ותריץ את התוכנה תראה איך שאפשר עם העכבר להזיז את הגבול בין שני הגרידים הימני והשמאלי שבתוך הגריד הראשי, אבל אני רוצה להוסיף פקדים לגריד הימני והשמאלי ב XAML של החלון ולא בתוך המחלקה של ה Split Container בעצמו כי הוא צריך להשאר גנארי שיתאים לכל תוכנית.
איך עושים את זה?תודה רבה.
פורסם במקור בפורום CODE613 ב28/11/2013 13:47 (+02:00)
-
גם אם כעת היית ניגש באמת ליצור כזה דבר, אז הירושה לא צריכה להיות מGrid, כי במקרה כזה אתה מסתבך לא רק עם הגנריות של תוכן הפקדים, אלא גם עם מס' העמודות והשורות.
ובכלל, למה גריד אם הפקד בעצם מייצג שתי פאנלים ימיני ושמאלי (או עליון ותחתון).
רק שאני אכן לא יודע איך ליצור פאנלים שיאפשרו להוסיף לכל אחד בנפרד פקדים בזמן ציור.פורסם במקור בפורום CODE613 ב01/12/2013 12:43 (+02:00)
-
ראה בקובץ המצורף שהמחלקה יורשת מגריד ובתוך הגריד הזה אני שם עוד שני גרידים אחד כפאנל שמאלי ואחד כפאנל ימני, ואז לתוך השני הפנאלים האלו אני אמור לשים פקדים בזמן עיצוב בממשק כך שאין פה בעיה עם עמודות כלל וזה ממש כמו הספליט-קונטיינר של וין-פורמס.
לא בדיוק הבנתי למה התכוונת עם ה GridSplitter איך הוא מתפקד כמו Win Forms SplitContainer ?
פורסם במקור בפורום CODE613 ב01/12/2013 22:10 (+02:00)
-
ככה:
<Grid> <Grid.RowDefinitions> <RowDefinition /> <RowDefinition Height="Auto" /> <RowDefinition /> </Grid.RowDefinitions> <GridSplitter Grid.Row="1" Height="3" Background="Gray" HorizontalAlignment="Stretch" /> </Grid>
פורסם במקור בפורום CODE613 ב02/12/2013 10:59 (+02:00)