2012-07-02 22 views
7

Ancak ilerleme çubuklarının ve tekerleklerin kullanıldığı ilerlemeyi gösteren birkaç örnek buldum; Bu soruyu sormayı düşündüğüm, ilerlemeyi belirtmek için bir elips (nokta-nokta-nokta) göstermek için yalnızca bir javascript örneği bulabilirim. Uygulamam çok karmaşık değil - yalnızca birkaç onay kutusu ve bir düğmesi var. Son zamanlarda ekibim bir geliştirme talep etti ve bunu da basit tutmak istiyor.Bir WPF düğmesinde nokta-nokta-nokta ilerlemesi gösteriliyor

kullanıcı gerekli ayarları yapılandırmadan sonra tıklama yapması 'GİT' adlı bir düğme bulunmaktadır. Bunun arkasındaki kod da gerçekten basittir - tıklama etkinliğinden sonra düğmeyi devre dışı bırakır ve üç eylemin 'yeniden düzenlenmesi', 'yayınla' ve 'yayınla' eylemlerini gerçekleştiren ProcessStartInfo'u kullanarak tek başına bir exe'yi çağırır. Düğmeyi yeniden etkinleştirmek için WaitForExist() yöntemini kullanıyorum.

Ben butonuna 'Geçerli süreci' göstermek için ekip tarafından talep edildi. Düğme metninin sadece Uzlaşma göstermesini istiyorlar. Uzlaşıyor ... Mutabakat ... (düzenli aralıklarla, 1 sn) ardından Posting and Publishing tarafından benzer bir şekilde devam ediyor.

O bunu başarmak için en uygun yolu bilmek güzel olurdu. Şimdiden teşekkürler.

cevap

9

bir ObjectAnimationUsingKeyFrames kullandığını yapmanın en basit yolu. TargetProperty'yi İçeriğe ayarlayın ve her DiscreteObjectKeyFrame'un Value'unu Reconciling. Reconciling.. Reconciling...'a ayarlayın.

<ControlTemplate.Triggers> 
    <Trigger Property="IsEnabled" Value="False"> 
     <Trigger.EnterActions> 
      <BeginStoryboard> 
       <Storyboard> 
        <ObjectAnimationUsingKeyFrames Storyboard.TargetName="PART_Content" Storyboard.TargetProperty="Content" Duration="00:00:00.8" RepeatBehavior="Forever"> 
         <DiscreteObjectKeyFrame KeyTime="00:00:00.0" Value="Loading"/> 
         <DiscreteObjectKeyFrame KeyTime="00:00:00.2" Value="Loading."/> 
         <DiscreteObjectKeyFrame KeyTime="00:00:00.4" Value="Loading.."/> 
         <DiscreteObjectKeyFrame KeyTime="00:00:00.6" Value="Loading..."/> 
        </ObjectAnimationUsingKeyFrames> 
       </Storyboard> 
      </BeginStoryboard> 
     </Trigger.EnterActions> 
    </Trigger> 
</ControlTemplate.Triggers> 
+0

teşekkür çok: Bir ControlTemplatePART_Content adlı ContentPresenter bir şurada

örneği. Bunu uygulamaya çalışacağım ve daha fazla yardıma ihtiyacım olup olmadığını size bildireceğim. Ancak; bir WinForms akşamdan kaldığımdan beri; Çözümün xaml yerine kodda daha fazla ele alınacağını umuyordum. –