Click to See Complete Forum and Search --> : WPF DataGrid


Arijit Manna
May 23rd, 2008, 04:30 AM
I am running a program on ComponentOne DataGrid along with VS2008, coding is in VB.It is giving 2 errors.
i)Could not create an instance of type'StaticExtension'
ii)Cannot find the type 'VisibilityToBoolConverter'

I am sending the relevant XAML code as well as the VisibilityToBoolConverter.vb code

<XAML>---code----
<CheckBox IsChecked="{Binding Visibility ,
Converter={x:Static local:VisibilityToBoolConverter.Default},
Mode=TwoWay}"/>
<TextBlock Text="{Binding Caption}"/>
</XAML>

<VisibilityToBoolConverter.vb>---code--
Imports System
Imports System.Collections.Generic
Imports System.Linq
Imports System.Text
Imports System.Windows.Data
Imports System.Windows
Imports System.Globalization

Namespace NEW_WpfApplication_20_5_08
Public Class VisibilityToBoolConverter
Implements IValueConverter

Public Shared ReadOnly [Default] As New VisibilityToBoolConverter()

Public Function Convert(ByVal value As Object, ByVal targetType As Type, ByVal parameter As Object, ByVal culture As CultureInfo) As Object Implements IValueConverter.Convert
If TypeOf value Is Visibility Then
Return CType(value, Visibility) = Visibility.Visible
Else
Return Binding.DoNothing
End If
End Function

Public Function ConvertBack(ByVal value As Object, ByVal targetType As Type, ByVal parameter As Object, ByVal culture As CultureInfo) As Object Implements IValueConverter.ConvertBack
If TypeOf value Is Boolean Then
Return If(CBool(value), Visibility.Visible, Visibility.Collapsed)
Else
Return Binding.DoNothing
End If
End Function
End Class
End Namespace
</VisibilityToBoolConverter.vb>
Could you please point out the error in my application ?
Regards
Arijit

Craig Gemmill
May 27th, 2008, 11:35 PM
Try it as a StaticResource instead:

http://learnwpf.com/Posts/Post.aspx?postId=05229e33-fcd4-44d5-9982-a002f2250a64

http://msdn.microsoft.com/en-us/library/system.windows.data.binding.converter.aspx

Make sure you use all appropriate namespaces too.