回答編集履歴

2

double型だと割り算で誤差がでるため、decimal型に変更

2022/09/28 09:18

投稿

draq
draq

スコア2573

test CHANGED
@@ -4,7 +4,7 @@
4
4
  ```C#
5
5
  internal class ValueConverter : IMultiValueConverter {
6
6
  public object Convert( object[] values, Type targetType, object parameter, CultureInfo culture ) {
7
- if( values.Length == 2 && values[0] is double val ) {
7
+ if( values.Length == 2 && values[0] is decimal val ) {
8
8
  if( values[1] is string unit ) {
9
9
  if( unit == "cm" ) {
10
10
  return $"{val / 10} cm";

1

環境について追記

2022/09/28 05:43

投稿

draq
draq

スコア2573

test CHANGED
@@ -1,5 +1,6 @@
1
1
  とりあえず、`IMultiValueConverter`を実装したコンバータを作成し、単位と値を渡して変換すればいいんじゃないでしょうか。
2
2
 
3
+ WPF(.NET6) で確認したコードをあげておきます。
3
4
  ```C#
4
5
  internal class ValueConverter : IMultiValueConverter {
5
6
  public object Convert( object[] values, Type targetType, object parameter, CultureInfo culture ) {