2012-07-27 2 views
0

userControl에서 columnSpan을 동적으로 수행하고 싶습니다. 변환기 클래스를 만들었지 만 작동하지 않았습니다. 올바르게하는 법을 보여 주시겠습니까? 감사.columnSpan 용 변환기 만들기

내 UserControl을의 코드 :

public class ColumSpanConverter : IValueConverter 
{ 
    public object Convert(object value, Type targetType, object parameter, CultureInfo culture) 
    {   
     bool isSpan = (bool)value; 
     return isSpan ? 2 : 0; 
    } 

    public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture) 
    { 
     throw new NotSupportedException(); 
    } 
} 

답변

1

컨버터는를 참조한다 : 그것은 UserControl.Resources에 대한 참조가

<local:VisibilityConverter x:Key="ColumSpanConverter"/> 

는 변환기 클래스가

<TextBlock x:Name="txtSumary" Grid.Row="0" Grid.Column="1" Text="{Binding summary}"   
    TextWrapping="Wrap" Style="{StaticResource PhoneTextAccentStyle}" Grid.ColumnSpan="{Binding isSpan, Converter={StaticResource ColumSpanConverter}}" /> 

입니다 잘못된 변환기 :

가되어야한다

<local:ColumSpanConverter x:Key="ColumSpanConverter" /> 
+0

덕분에 내 실수를 지적 할 수 있습니다. 또한 나는 Convert 함수에서 0 대신 1을 리턴해야한다는 것을 알았다. – user819774