• דף הבית
  • קטגוריות
  • פוסטים אחרונים
  • משתמשים
  • חיפוש
  • חוקי הפורום
כיווץ
תחומים

תחומים - פורום חרדי מקצועי

WPF: שגיאה בהגדרת סטייל

מתוזמן נעוץ נעול הועבר ארכיון code613m
6 פוסטים 3 כותבים 307 צפיות
    • מהישן לחדש
    • מהחדש לישן
    • הכי הרבה הצבעות
תגובה
  • תגובה כנושא
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • A מנותק
    A מנותק
    avr416
    כתב ב נערך לאחרונה על ידי
    #1

    הגדרתי טמפלטים לגריד וwrappanel ועוד בקובץ App.xaml ולכל אחד נתתי x:key
    אח"כ בחלון מסוים תחת window.resource הגדרתי שהסטייל של האלמנטים הללו יהיה static resource ואת הKey שלהם.
    משום מה אני מקבל את השגיאה הנ"ל:
    Style object is not allowed to affect the Style property of the object to which it applies.

    מישו יודע מדוע ולמה?
    תודה רבה!

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

    תגובה 1 תגובה אחרונה
    0
  • dovidD מנותק
    dovidD מנותק
    dovid ניהול
    כתב ב נערך לאחרונה על ידי
    #2

    תוכל להציג דוגמה של הסטייל? לאו דוקא דוגמה מלאה, רק מייצגת.

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

    אפשר ליצור קשר dovid@tchumim.com

    תגובה 1 תגובה אחרונה
    0
  • A מנותק
    A מנותק
    avr416
    כתב ב נערך לאחרונה על ידי
    #3

    בשמחה!

    <Application.Resources>
            <Style TargetType="HeaderedContentControl" >
                <Setter Property="Template">
                    <Setter.Value>
                        <ControlTemplate TargetType="HeaderedContentControl">
                            <Grid Margin="5,0">
                                <Grid.ColumnDefinitions>
                                    <ColumnDefinition SharedSizeGroup="col"/>
                                    <ColumnDefinition/>
                                </Grid.ColumnDefinitions>
                                <TextBlock Text="{TemplateBinding Header}" Foreground="Indigo" Margin="10,0"/>
                                <ContentPresenter Grid.Column="1"/>
                                <ContentPresenter Grid.Column="1"/>
                            </Grid>
                        </ControlTemplate>
                    </Setter.Value>
                </Setter>
            </Style>
            <Style TargetType="TextBox"  >
                <Setter Property="VerticalAlignment" Value="Center" />
                <Setter Property="Width" Value="120" />
            </Style>
            <Style TargetType="WrapPanel" >
                <Setter Property="Margin" Value="5,0"/>
                <Setter Property="Orientation" Value="Vertical"/>
                <Setter Property="HorizontalAlignment" Value="Center"/>
                <Setter Property="VerticalAlignment" Value="Center"/>
            </Style>
            
            <Style TargetType="Window">
                <Setter Property="Background" Value="LightSteelBlue"/>
            </Style>
            <Style TargetType="Button">
                <Setter Property="Margin" Value="10,2"/>
                <Setter Property="Padding" Value="10,5"/>
                <Setter Property="FontWeight" Value="Bold"/>
                <Setter Property="FontSize" Value="14"/>
            </Style>
        </Application.Resources>
    

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

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

    תגובה 1 תגובה אחרונה
    0
  • רחמיםר מנותק
    רחמיםר מנותק
    רחמים
    כתב ב נערך לאחרונה על ידי
    #4

    מעניין אצלי זה לא קורה, אולי תפרט יותר.

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

    מומלצים: חיפוש במסמכים | OCR | נקדן חינמי | ניהול כולל - מס"ב

    תגובה 1 תגובה אחרונה
    0
  • A מנותק
    A מנותק
    avr416
    כתב ב נערך לאחרונה על ידי
    #5

    נניח אם אני מגדיר לwrappanel את הkey="wrap"
    כך:

    <Style TargetType="WrapPanel" x:Key="wrap" >
                <Setter Property="Margin" Value="5,0"/>
                <Setter Property="Orientation" Value="Vertical"/>
                <Setter Property="HorizontalAlignment" Value="Center"/>
                <Setter Property="VerticalAlignment" Value="Center"/>
            </Style>
    

    ואח"כ באחד החלונות כותב:

    <Grid.Resources>
                <Style TargetType="WrapPanel">
                    <Setter Property="Style" Value="{StaticResource wrap}"/>
                </Style>
    

    אז אני מקבל את השגיאה הבאה:

    Style object is not allowed to affect the Style property of the object to which it applies.
    

    תודה רבה

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

    תגובה 1 תגובה אחרונה
    0
  • רחמיםר מנותק
    רחמיםר מנותק
    רחמים
    כתב ב נערך לאחרונה על ידי
    #6

    אתה צריך לעשות כך:

    <Style TargetType="WrapPanel" BasedOn="{StaticResource wrap}"/>
    

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

    מומלצים: חיפוש במסמכים | OCR | נקדן חינמי | ניהול כולל - מס"ב

    תגובה 1 תגובה אחרונה
    2

  • התחברות

  • אין לך חשבון עדיין? הרשמה

  • התחברו או הירשמו כדי לחפש.
  • פוסט ראשון
    פוסט אחרון
0
  • דף הבית
  • קטגוריות
  • פוסטים אחרונים
  • משתמשים
  • חיפוש
  • חוקי הפורום
  • התחברות

  • אין לך חשבון עדיין? הרשמה

  • התחברו או הירשמו כדי לחפש.