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

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

💡 רוצה לזכור קריאת שמע בזמן? לחץ כאן!
  1. דף הבית
  2. תכנות
  3. ארכיון code613m
  4. WPF: שגיאה בהגדרת סטייל

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

מתוזמן נעוץ נעול הועבר ארכיון code613m
6 פוסטים 3 כותבים 357 צפיות
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • 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)

          תגובה 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)

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

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

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

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