Свойство не может быть нулевым в Trigger - PullRequest
3 голосов
/ 14 февраля 2012
<Style TargetType="controls:EventTimeView">      
    <Style.Triggers>         
        <Trigger Property="PositioningMethod" Value="Column" >
            <Setter Property="Background" Value="Black" />
        </Trigger>
    </Style.Triggers>
</Style>

PositioningMethod является свойством зависимостей EventTimeView типа enum.

Результаты:

System.InvalidOperationException occurred
Message=Property can not be null on Trigger.
Source=PresentationFramework
StackTrace:
   at System.Windows.StyleHelper.UpdateTables(PropertyValue& propertyValue, FrugalStructList`1& childRecordFromChildIndex, FrugalStructList`1& triggerSourceRecordFromChildIndex, FrugalStructList`1& resourceDependents, HybridDictionary& dataTriggerRecordFromBinding, HybridDictionary childIndexFromChildName, Boolean& hasInstanceValues)
InnerException: 

Я понятия не имею, что может быть не так.Исключение слишком расплывчато: какое свойство?что такое ноль?

Ответы [ 2 ]

13 голосов
/ 24 февраля 2012

Дважды проверьте определение DependencyProperty для PositioningMethodProperty - убедитесь, что тип владельца является фактически классом, в котором определен DP.

0 голосов
/ 14 февраля 2012

Попробуйте предварительно установить свойство фона в стиле, например:

    <Style TargetType="controls:EventTimeView">   
    <Setter Property="Background" Value="Transparent" />

    <Style.Triggers>         
        <Trigger Property="PositioningMethod" Value="Column" >
            <Setter Property="Background" Value="Black" />
        </Trigger>
    </Style.Triggers>
</Style>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...