نمایش نتایج 1 تا 12 از 12

نام تاپیک: ساخت يك دكمه

  1. #1
    کاربر دائمی آواتار water_lily_2012
    تاریخ عضویت
    مرداد 1388
    محل زندگی
    اصفهان
    پست
    659

    ساخت يك دكمه

    سلام
    من يك Border و يك Button دارم. مي خواهم با كليك روي دكمه، Border با يك StoryBoard به كنار صفحه برود و با كليك روي همان دكمه دوباره با يك StroyBoard سرجاي اوليه اش برگردد. تغيير مكان Border را مي دانم فقط نمي دانم چه كار كنم كه دكمه دو تا كار را بكنه. با كليك اول بفهمد كه به كنار برود و با كليك دوم سر جاي اوليه اش برگردد.
    با تشكر

  2. #2

  3. #3
    کاربر دائمی آواتار water_lily_2012
    تاریخ عضویت
    مرداد 1388
    محل زندگی
    اصفهان
    پست
    659

    نقل قول: ساخت يك دكمه

    من به صفحه زير مراجعه كردم و از كد آقا مهدي استفاده كردم ولي براي من درست كار نمي كرد.
    https://barnamenevis.org/showthread.php?282281-%DA%86%D8%B7%D9%88%D8%B1-%D9%85%DB%8C%D8%AA%D9%88%D9%86%D9%85-%D8%A8%D8%B1%D8%A7%DB%8C-%D8%A7%D8%AC%D8%B1%D8%A7-%D8%B4%D8%AF%D9%86-Storyboard-%D8%B4%D8%B1%D8%B7-%D8%A8%D8%B0%D8%A7%D8%B1%D9%85-%D8%9F&highlight=%D8%A7%D8%AC%D8%B1%D8%A7%D9%8A+st  oryboard




    if (this.bolBackClick == true)
    {
    System.Windows.Media.Animation.Storyboard gheymatUnAction = (System.Windows.Media.Animation.Storyboard)(FindRe source("GheymatUnAction"));
    BeginStoryboard(gheymatUnAction);
    }


  4. #4

    نقل قول: ساخت يك دكمه

    سلام
    این نمونه رو ببینید

    bool Clicked;
    private void button_Click(object sender, RoutedEventArgs e)
    {
    if (this.Clicked == false)
    {
    System.Windows.Media.Animation.Storyboard OnClick1 = (System.Windows.Media.Animation.Storyboard)(FindRe source("OnClick1"));
    BeginStoryboard(OnClick1);
    }
    else
    {
    System.Windows.Media.Animation.Storyboard OnClick2 = (System.Windows.Media.Animation.Storyboard)(FindRe source("OnClick2"));
    BeginStoryboard(OnClick2);
    }
    }

    private void OnClick1_Completed(object sender, EventArgs e)
    {
    this.Clicked = true;
    }

    private void OnClick2_Completed(object sender, EventArgs e)
    {
    this.Clicked = false;
    }




    <Window.Resources>
    <Storyboard x:Key="OnClick1" Completed="OnClick1_Completed">
    <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.RenderTransf orm).(TransformGroup.Children)[3].(TranslateTransform.X)" Storyboard.TargetName="border">
    <SplineDoubleKeyFrame KeyTime="0:0:1" Value="220"/>
    </DoubleAnimationUsingKeyFrames>
    <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.RenderTransf orm).(TransformGroup.Children)[3].(TranslateTransform.Y)" Storyboard.TargetName="border">
    <SplineDoubleKeyFrame KeyTime="0:0:1" Value="222"/>
    </DoubleAnimationUsingKeyFrames>
    </Storyboard>
    <Storyboard x:Key="OnClick2" Completed="OnClick2_Completed">
    <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.RenderTransf orm).(TransformGroup.Children)[3].(TranslateTransform.X)" Storyboard.TargetName="border">
    <SplineDoubleKeyFrame KeyTime="0:0:1" Value="0"/>
    </DoubleAnimationUsingKeyFrames>
    <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.RenderTransf orm).(TransformGroup.Children)[3].(TranslateTransform.Y)" Storyboard.TargetName="border">
    <SplineDoubleKeyFrame KeyTime="0:0:1" Value="0"/>
    </DoubleAnimationUsingKeyFrames>
    </Storyboard>
    </Window.Resources>
    فایل های ضمیمه فایل های ضمیمه
    آخرین ویرایش به وسیله مهدی فرزاد : چهارشنبه 07 اردیبهشت 1390 در 18:16 عصر

  5. #5
    کاربر دائمی آواتار water_lily_2012
    تاریخ عضویت
    مرداد 1388
    محل زندگی
    اصفهان
    پست
    659

    نقل قول: ساخت يك دكمه

    سلام
    من دستورات را در WinManager.cs نوشتم ولي براي دستور زير خطا مي ده:
    (FindResource("OpenLeftTab"));


    چنين دستوري وجود نداره. احتمالا Using خاصي را نياز داره.

  6. #6

    نقل قول: ساخت يك دكمه

    این متد در کلاس Windows هست پس اگر دارید در کلاس که برای مدیریت استایل ویندوزتون درست کردید ازش استفاده میکنید باید به این شکل عمل کنید
    Window window = ((FrameworkElement)sender).TemplatedParent as Window;
    System.Windows.Media.Animation.Storyboard OnClick1 = (System.Windows.Media.Animation.Storyboard)(window .FindResource("OnClick1"));

  7. #7
    کاربر دائمی آواتار water_lily_2012
    تاریخ عضویت
    مرداد 1388
    محل زندگی
    اصفهان
    پست
    659

    نقل قول: ساخت يك دكمه

    حالا اين مشكل را دارم. علت چيه. StoryBoard‌من در لايه اولي نيست. در داخل يك TabControl هست. آيا فرقي در صدا زدن مي كنه.
    nil1.jpg

  8. #8

    نقل قول: ساخت يك دكمه

    اگر StoryBoard شما مثلا در Resource یک Border تعریف شده مثل کد زیر
    <Border.Resources>
    <Storyboard x:Key="Storyboard1">
    <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.RenderTransf orm).(TransformGroup.Children)[3].(TranslateTransform.X)" Storyboard.TargetName="button">
    <EasingDoubleKeyFrame KeyTime="0:0:1" Value="168"/>
    </DoubleAnimationUsingKeyFrames>
    <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.RenderTransf orm).(TransformGroup.Children)[3].(TranslateTransform.Y)" Storyboard.TargetName="button">
    <EasingDoubleKeyFrame KeyTime="0:0:1" Value="113"/>
    </DoubleAnimationUsingKeyFrames>
    </Storyboard>
    </Border.Resources>


    باید به این شکل فراخوانی بشه

    border.FindResource("Storyboard1")


    border در کد بالا X:Name مربوط به Border هست

    برنامتون رو قرار بدید تا اصلاحش کنم

  9. #9
    کاربر دائمی آواتار water_lily_2012
    تاریخ عضویت
    مرداد 1388
    محل زندگی
    اصفهان
    پست
    659

    نقل قول: ساخت يك دكمه

    در MSDN ديدم اصلا به طريقي خيلي ساده يك StroryBoard را اجرا كرده بود.
    اين صفحه را ببينيد.
    http://msdn.microsoft.com/en-us/library/system.windows.media.animation.storyboard%28v=vs.9  5%29.aspx



    احتمال زياد مشكل از StoryBoard من باشه.
        <Style x:Key="TabControlStyle1" TargetType="{x:Type TabControl}">
    <Setter Property="Template">
    <Setter.Value>
    <ControlTemplate TargetType="{x:Type TabControl}">
    <ControlTemplate.Resources>
    <Storyboard x:Key="OpenLeftTab" x:Name="OpenLeftTab" Completed="OpenLeftTab_Completed">
    <ThicknessAnimationUsingKeyFrames Storyboard.TargetProperty="(FrameworkElement.Margi n)" Storyboard.TargetName="grid">
    <EasingThicknessKeyFrame KeyTime="0" Value="0"/>
    <EasingThicknessKeyFrame KeyTime="0:0:0.4" Value="-187,0,0,0"/>
    </ThicknessAnimationUsingKeyFrames>
    </Storyboard>


    شما DoubleAnimation داريد ولي من ندارم. اين چي هست.
    آخرین ویرایش به وسیله water_lily_2012 : دوشنبه 12 اردیبهشت 1390 در 10:35 صبح

  10. #10

    نقل قول: ساخت يك دكمه

    سلام
    مشکل از StoryBoard نیست
    مثال منو دانلود کردید؟؟ طبق مثال من عمل کنید من مشکلی نمی بینم!!
    روشی که در مثال MSDN استفاده شده به دوشکل کد نویسی در Xaml و کد نویسی C#‎ رو برای ساخت StoryBoard معرفی کرده مشابه روشی هست که من در لینک زیر ازش استفاده کردم
    https://barnamenevis.org/showthread.p...86%D8%B1%DB%8C
    اما مشکل شما ساخت StoryBoard نیست شما StoryBoard تعریف کردید و اونو آماده داریدفقط میخواید با توجه به یک شرط اجرا بشه که روش مناسب همونی هست که گفتم
    شاید بخاطر اینکه شما دارید کد رو در کلاسی که برای مدیریت استایل ایجاد کردید مینویسید با مشکل مواجه شده
    اگر برنامه نمونه رو بگذارید بهتر میشه کمک کرد

  11. #11
    کاربر دائمی آواتار water_lily_2012
    تاریخ عضویت
    مرداد 1388
    محل زندگی
    اصفهان
    پست
    659

    نقل قول: ساخت يك دكمه

    مشكل اينكه وقتي داخل كلاس اصلي مي نويسم. قسمت فراخواني تابع در كد XMAL ايراد مي گيره و دنبال تابع مي گرده. برنامه انتظار داره تابع را داخل كلاس مديريت استايل بنويسم. و اصلا توجهي به توابع در كلاس اصلي نمي كنه.
    چه كار كنم كه داخل هر دو كلاس را براي نام تابع جستجو كنه.

  12. #12

    نقل قول: ساخت يك دكمه

    من درست متوجه منظور شما نشدم
    ولی یک نمونه براتون میگذارم که از یک پنجره دیگه یک انیمیشن رو در پنجره اصلی اجرا میکنه

    بازم میگم نمونه کاری رو که دارد انجام میدید بگذارید
    فایل های ضمیمه فایل های ضمیمه

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •