Decimal ScrollBar Window with extending IValueConverter : IValueConverter « Windows Presentation Foundation « VB.Net






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:WpfApplication1.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.vb
Imports System
Imports System.Globalization
Imports System.Windows
Imports System.Windows.Data

Namespace WpfApplication1.DecimalScrollBar
  <ValueConversion(GetType(Double), GetType(Decimal))> _
  Public Class DoubleToDecimalConverter
    Implements IValueConverter
    Public Function Convert(value As Object, typeTarget As Type, param As Object, culture As CultureInfo) As Object Implements IValueConverter.Convert
      Dim num As Decimal = New [Decimal](CDbl(value))

      If param IsNot Nothing Then
        num = [Decimal].Round(num, Int32.Parse(TryCast(param, String)))
      End If

      Return num
    End Function
    Public Function ConvertBack(value As Object, typeTarget As Type, param As Object, culture As CultureInfo) As Object Implements IValueConverter.ConvertBack
      Return [Decimal].ToDouble(CDec(value))
    End Function
  End Class
End Namespace

   
    
    
    
    
  








Related examples in the same category

1.Use LengthConverterUse LengthConverter
2.Debug Data Bindings Using an Empty IValueConverterDebug Data Bindings Using an Empty IValueConverter