Mega Code Archive

 
Categories / VB.Net Tutorial / WPF
 

Use LengthConverter

<Window xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"     xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"     x:Class="Canvas_Positioning_Properties.Window1"     Title="Canvas Positioning Properties">   <StackPanel>     <Canvas Name="canvas1" Height="300">         <TextBlock Name="text1" FontWeight="Bold" Canvas.Left="0" Canvas.Right="0" Canvas.Top="0" Canvas.Bottom="0">A TextBlock.</TextBlock>   </Canvas>     <ListBox Grid.Column="3" Grid.Row="1" VerticalAlignment="Top" Width="60" Margin="10,0,0,0" SelectionChanged="ChangeLeft">       <ListBoxItem>Auto</ListBoxItem>             <ListBoxItem>10</ListBoxItem>       <ListBoxItem>20</ListBoxItem>       <ListBoxItem>30</ListBoxItem>       <ListBoxItem>40</ListBoxItem>       <ListBoxItem>50</ListBoxItem>       <ListBoxItem>60</ListBoxItem>       <ListBoxItem>70</ListBoxItem>       <ListBoxItem>80</ListBoxItem>       <ListBoxItem>90</ListBoxItem>       <ListBoxItem>100</ListBoxItem>           </ListBox>   </StackPanel>         </Window> //File:Window.xaml.vb Imports System Imports System.Windows Imports System.Windows.Controls Imports System.Windows.Documents Imports System.Windows.Navigation Imports System.Windows.Shapes Imports System.Windows.Data Namespace Canvas_Positioning_Properties   Public Partial Class Window1     Inherits Window     Public Sub ChangeLeft(sender As Object, args As SelectionChangedEventArgs)       Dim li As ListBoxItem = TryCast(TryCast(sender, ListBox).SelectedItem, ListBoxItem)       Dim myLengthConverter As New LengthConverter()       Dim db1 As [Double] = CType(myLengthConverter.ConvertFromString(li.Content.ToString()), [Double])       Canvas.SetLeft(text1, db1)       Console.WriteLine(myLengthConverter.ConvertToString(Canvas.GetLeft(text1)))     End Sub   End Class End Namespace