2017-09-22 9 views
-1

文字列値を文字列形式でバインドしたいと思います。WPFアニメーションstringformatでアニメーション値を変更する方法

私は多くの方法を試しましたが、うまくいきませんでした。

この問題を解決するのに手伝ってもらえますか?

これは現在使用している方法ですが、まだStringFormatを使用します。

どうすればいいですか?

<DiscreteObjectKeyFrame.Value> 
    <MultiBinding Converter="{StaticResource DotConverter}"> 
     <Binding Path="LoadingStringShow"/> 
     <Binding> 
      <Binding.Source> 
       <sys:Int16>1</sys:Int16> 
      </Binding.Source> 
     </Binding> 
    </MultiBinding> 
</DiscreteObjectKeyFrame.Value> 
+0

月[この](https://でstacko verflow.com/a/4010782/4610605)お手伝いしますか? –

+1

StringFormatは 'string'値には適用されません。 – mm8

+0

これは解決されていますか? –

答えて

0

文字列をフォーマットする最も良い方法は、コードでこれを行うことです。

string.Format()を使用するか、C#6の新機能:"Interpolated Strings"を使用して、stringをフォーマットすることができます。

private string _name; 
public string Name 
{ 
    get {return $"My Name is {_name}";} 
    set 
    { 
     _name = value; 
     //OnPropertyChanged("Name"); 
    } 
} 

あなたBindingは、表示されます:My Name is <valueofvariable>

をあなたのバインディングの名前は、私はあなたがロードメッセージのいくつかの種類を表示したいと仮定LoadingStringShowですので。

多分これはまた助けることができる:

<TextBlock Text="{Binding LoadingStringShow, StringFormat={}{0}%}" /> 

または

<TextBlock TextAlignment="Center"> 
<TextBlock.Text> 
    <MultiBinding StringFormat="{}{0} - {1}%"> 
     <Binding Path="LoadingStringShow" /> 
     <Binding Path="CurrentValue" /> 
    </MultiBinding> 
</TextBlock.Text> 

Reference 1

Reference 2

関連する問題