Как использовать настраиваемый шаблон элемента, содержащий тег Path в ComboBox (не вызывая исключения вне диапазона)

У меня есть поле со списком со следующим DataTemplate:

<DataTemplate x:Key="ComboBoxDataTemplate">
            <StackPanel>
                <TextBlock Text="{Binding Path='Name'}"/>
                <Path Data="{Binding Path='PathGeometry'}" Width="64" Height="64" Stroke="Black" Stretch="Fill" StrokeThickness="1"/>
            </StackPanel>
        </DataTemplate>

PathGeometry - это что-то простое, например 0,1 0,0.5 0.5,0 0,1 (простая кривая). Когда я выбираю элемент в поле со списком, все приложение silverlight становится белым. Выдается исключение «Значение вне допустимого диапазона», которое я обрабатываю, но после этого оно становится белым.

Почему выбрасывается исключение? Если я удалю {Binding} из тега Path и определю свой собственный, он будет работать нормально. Почему-то это просто привязка данных.


person Mark Ingram    schedule 06.11.2008    source источник


Ответы (1)


Я точно не нашел "ответа" на это, но нашел обходной путь. Вместо того, чтобы создавать свойство типа PathGeometry, если вы измените свойство на использование String, которое будет работать одинаково хорошо (с использованием синтаксиса разметки пути).

person Mark Ingram    schedule 06.11.2008