Decimal ScrollBar Window with extending IValueConverter : IValueConverter « Windows Presentation Foundation « C# / C Sharp






Decimal ScrollBar Window with extending IValueConverter

Decimal ScrollBar Window with extending IValueConverter
   
<Window xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:src="clr-namespace:MyNameSpace.DecimalScrollBar" 
        Title="Decimal ScrollBar">
    <Window.Resources>
        <src:DoubleToDecimalConverter x:Key="conv" />
    </Window.Resources>
    <StackPanel>
        <ScrollBar Name="scroll"
                   Orientation="Horizontal" Margin="24" 
                   Maximum="100" LargeChange="10" SmallChange="1" />
        <Label HorizontalAlignment="Center" 
               Content="{Binding ElementName=scroll, Path=Value, 
                    Converter={StaticResource conv}, ConverterParameter=2}" />
    </StackPanel>
</Window>
//File:Window.xaml.cs
using System;
using System.Globalization;
using System.Windows;
using System.Windows.Data;

namespace MyNameSpace.DecimalScrollBar
{
    [ValueConversion(typeof(double), typeof(decimal))]
    public class DoubleToDecimalConverter : IValueConverter
    {
        public object Convert(object value, Type typeTarget,object param, CultureInfo culture)
        {
            decimal num = new Decimal((double)value);

            if (param != null)
                num = Decimal.Round(num, Int32.Parse(param as string));

            return num;
        }
        public object ConvertBack(object value, Type typeTarget, 
                                  object param, CultureInfo culture)
        {
            return Decimal.ToDouble((decimal)value);
        }
    }
}

   
    
    
  








Related examples in the same category

1.IMultiValueConverter and IValueConverterIMultiValueConverter and IValueConverter
2.Extend IValueConverter to create your own converterExtend IValueConverter to create your own converter
3.Debug Data Bindings Using an Empty IValueConverterDebug Data Bindings Using an Empty IValueConverter
4.Use LengthConverterUse LengthConverter
5.Color Converter