2011-05-03 54 views
0

我想添加一个触发器到一个动态创建的控件,但我不能。该事件不会触发。这是我的代码。eventtocommand动态创建的控件silverlight mvvm light

<sdk:HierarchicalDataTemplate x:Key="NameTemplate" 
     ItemsSource="{Binding LstRs}" 
     ItemTemplate="{StaticResource RsTemplate}"> 
       <TextBlock Text="{Binding Nom}" FontWeight="Bold" > 
        <i:Interaction.Triggers> 
          <i:EventTrigger EventName="MouseEnter"> 
           <gs:EventToCommand Command="{Binding Path=StateCommand}"   
     CommandParameter="{Binding Text, ElementName=TextBoxSearch, Mode=OneWay}" 
             MustToggleIsEnabledValue="True"/> 
          </i:EventTrigger> 
         </i:Interaction.Triggers> 

       </TextBlock> 
      </sdk:HierarchicalDataTemplate> 

并且该命令在视图模型中实现。

+0

尝试在EventToCommand代码的OnAttached方法中添加一个断点(必须将MvvmLight项目的源代码添加到您的解决方案中)并查看断点是否被命中。 – 2011-05-11 14:50:28

回答

0

恕我直言,在这种情况下最常见的错误是该命令没有创建 - 即StateCommand == null - 当数据绑定。确保你在view-model的构造函数中创建了这个命令。