私がやろうとしていることは比較的簡単です。XAMLコンバータへのバインド
public class MultiplyByFactor : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
return ((double)value * (double)parameter);
}
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
{
return true;
}
}
私は取得しています:
<Ellipse Name="EllipseOnlyLFA" Height="200" Fill="Yellow" HorizontalAlignment="Left" VerticalAlignment="Bottom" ClipToBounds="True">
<Ellipse.Width>
<Binding ElementName="EllipseOnlyLFA" Path="Height"/>
</Ellipse.Width>
<Ellipse.RenderTransform>
<TranslateTransform>
<TranslateTransform.Y>
<Binding Converter="MultiplyByFactor" ElementName="EllipseOnlyLFA" Path="Height" ConverterParameter="0.5"/>
</TranslateTransform.Y>
</TranslateTransform>
</Ellipse.RenderTransform>
</Ellipse>
は、私はまた、次のコンバータを持っている:私はちょうど楕円の高さを1/2に楕円上TranslateTransformののY要素をバインドしようとしています実際にコンバータを使用するXAML行のエラーです。エラーは 'プロパティを設定し '
あるSystem.Windows.Data.Binding.Converter' が例外をスローしました'。行番号 '22' と行位置 '8'。
どのようにこれを行うには、誰か光を当てることができますか? 編集:はい、コンバータとしてリソースを追加しました。あなたは、あなたがあまりにも
xmlns:c="clr-namespace:WpfApplication1"
エンド編集
<Window.Resources>
<c:MultiplyByFactor x:Key="myMultiplyByFactor"/>
</Window.Resources>
を名前空間を追加する必要が
編集
リソースにコンバータを追加する必要が
@Albinに変換 - それは私が資源としてそれを持っているんコンバーター= {StaticResource myMultiplyByFactor} –
でなければなりません。 –
私はdownvoteが必要だとは思わない、ここのアイデアが正しいから。 –