كيفية تعيين الخاصية بيانات لنمط زر في برنامج الأغذية العالمي؟

StackOverflow https://stackoverflow.com/questions/1425390

  •  07-07-2019
  •  | 
  •  

سؤال

في هذا المثال الملكية:

وData= M150.655, 39.109L10.407, 53.785L0.602, 1.309l158.026-0.806L150.655, 39.109z

وكيف هذا العمل الممتلكات Data واستخدام هذه القيم 5؟

<Style x:Key="ButtonStyler"

     TargetType="{x:Type Button}">
<Setter Property="Cursor"
        Value="Hand" />
<Setter Property="Template">

  <Setter.Value>
    <ControlTemplate
      TargetType="{x:Type Button}">
      <Grid>

        <Path x:Name="ButtonBG"
              Fill="Lime"
              Stroke="#000000"
              StrokeThickness="3"  

              Data="M150.655,39.109L10.407,53.785L0.602,1.309l158.026-0.806L150.655,39.109z" />
        <ContentPresenter x:Name="ContentSite"
                          Margin="20,10,20,10"
                          VerticalAlignment="{TemplateBinding VerticalContentAlignment}"
                          HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
                          TextBlock.FontFamily="Comic Sans MS"
                          TextBlock.FontSize="20">
          <ContentPresenter.RenderTransform>
            <TransformGroup>
              <TransformGroup.Children>
                <TransformCollection>
                  <RotateTransform Angle="-5" />
                  <ScaleTransform ScaleX="1.5"
                                  ScaleY="1" />
                  <TranslateTransform X="-35"
                                      Y="0" />
                </TransformCollection>
              </TransformGroup.Children>
            </TransformGroup>
          </ContentPresenter.RenderTransform>
        </ContentPresenter>
      </Grid>
      <ControlTemplate.Triggers>
        <Trigger Property="IsMouseOver"
                 Value="true">
          <Setter Property="Path.Fill"
                  Value="yellow"
                  TargetName="ButtonBG" />
        </Trigger>
        <Trigger Property="IsPressed"
                 Value="true">
          <Setter Property="Path.Fill"
                  Value="lime"
                  TargetName="ButtonBG" />
        </Trigger>
      </ControlTemplate.Triggers>
    </ControlTemplate>
  </Setter.Value>
</Setter>
<Style.Triggers>
  <Trigger Property="IsMouseOver"
           Value="true">
    <Setter Property="RenderTransform">
      <Setter.Value>
        <TransformGroup>
          <TransformGroup.Children>
            <TransformCollection>
              <RotateTransform Angle="-5" />
              <TranslateTransform X="-5"
                                  Y="0" />
            </TransformCollection>
          </TransformGroup.Children>
        </TransformGroup>
      </Setter.Value>
    </Setter>
  </Trigger>
  <Trigger Property="IsPressed"
           Value="true">
    <Setter Property="RenderTransform">
      <Setter.Value>
        <TransformGroup>
          <TransformGroup.Children>
            <TransformCollection>
              <RotateTransform Angle="-5" />
              <TranslateTransform X="-5"
                                  Y="5" />
            </TransformCollection>
          </TransformGroup.Children>
        </TransformGroup>
      </Setter.Value>
    </Setter>
  </Trigger>
</Style.Triggers>

هل كانت مفيدة؟

المحلول

عقار البيانات كما يرتبط مع الأشكال وهندسة مسار لا تذهب مباشرة الى ذلك، أولا للتو من قراءة أساسيات الهندسة مسار فإنك سوف تكون قادرة على فهم خاصية البيانات في أي شكل ..

نصائح أخرى

ووالبيانات هي خاصية الكائن مسار في القالب الخاص بك ...

http://msdn.microsoft.com/en-us/library /ms745814.aspx

وتحرير:

ومن الدوكو MSDN: تنسب البيانات سلسلة تبدأ مع الأمر "MoveTo ل"، وأشار M، الذي يحدد نقطة البداية لمسار في نظام الإحداثيات من قماش. المعلمات البيانات مسار تتحسس. العاصمة M يشير إلى المكان المطلق لالنقطة الحالية الجديدة. ومن شأن صغيرة م تشير الإحداثيات النسبية. الجزء الأول هو منحنى بيزيه مكعب ابتداء من (100،200) وتنتهي في (400175) تعادل باستخدام نقاط التحكم اثنين (100،25) و (400350). يشار إلى هذه الشريحة من قبل الأمر C في البيانات السمة السلسلة. مرة أخرى، عاصمة C يشير إلى مسار مطلق. ان صغيرة ج تشير إلى وجود مسار نسبي.

والجزء الثاني يبدأ مع أفقي المطلقة "lineto" H الأوامر، التي تحدد خط مرسوم من نقطة النهاية في المسار الفرعي السابقة في (400175) إلى نقطة النهاية الجديدة (280175). لأنه الأفقي "lineto الأمر"، القيمة المحددة هي الإحداثي س.

لبناء الجملة المسار الكامل، انظر في مرجع بيانات و كيفية : إنشاء الشكل عن طريق استخدام PathGeometry .

ويساعد هذا الأمل:)

وإيان

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top