2017-01-05 8 views
0

ここでは少し問題があります。私はxamlの上に自分のデータテンプレートを宣言し、それをリストボックスのitemtemplateにリンクしました。 XAML私の後ろに私のコードではResharperがデータコンテキストデータテンプレートにないプロパティを強調表示します

<DataTemplate x:Key="listTemplate"> 

      <!--In case we need a click add button --> 
      <DockPanel HorizontalAlignment="Left" Height="92" LastChildFill="False" Margin="17,10,0,0" VerticalAlignment="Top" Width="615" Background="Green" > 
       <Border BorderBrush="#FF000000" BorderThickness="1,1,1,1" CornerRadius="8,8,8,8" Margin="10,0,614,475"/> 
       <TextBlock Margin="10,42,10,29" Width="70"> Приміщення</TextBlock> 
       <TextBlock Margin="10,42,10,29" Width="75"> №</TextBlock> 
       <Separator Style="{StaticResource {x:Static ToolBar.SeparatorStyleKey}}" /> 
       <TextBlock Margin="10,42,10,29" Width="91"> Гамма</TextBlock> 
       <TextBlock Margin="10,42,10,29" Width="91" Text="{Binding MonitorGammaCh}"></TextBlock> 
       <Separator Style="{StaticResource {x:Static ToolBar.SeparatorStyleKey}}" /> 
       <TextBlock Margin="10,42,10,29" Width="91"> Нейтрон</TextBlock> 
       <TextBlock Margin="10,42,10,29" Width="72" Text="{Binding MonitorNeutronCh}"></TextBlock> 

       <Separator Style="{StaticResource {x:Static ToolBar.SeparatorStyleKey}}" /> 
      </DockPanel> 
      <!--</StackPanel>--> 
     </DataTemplate> 

<TabItem x:Name="MonitorsTab" Background="#617891" > 
       <TabItem.Header> 
        <Image Width="100" Height="100" Source="../Resources/radioactive 256X256.png" /> 
       </TabItem.Header> 
       <ListBox x:Name="MonitorsList" ItemTemplate="{StaticResource listTemplate}"> 

       </ListBox>    
      </TabItem> 

MonitorsTab.DataContext = mainWindowViewModel.MonitorsTabViewModel; 


     MonitorsViewModels = new ObservableCollection<MonitorViewModel> 
     { 
      new MonitorViewModel { MonitorGammaCh = "gamma1", MonitorNeutronCh = "neutron2" } , 
      new MonitorViewModel { MonitorGammaCh = "gamma1", MonitorNeutronCh = "neutron2" }, 
      //new MonitorViewModel { MonitorGammaCh = "gamma1", MonitorNeutronCh = "neutron2"} 

     }; 
     MonitorsList.ItemsSource = MonitorsViewModels; 

を持っていると私は結果がこれです。ガンマ1と中性子2のテキストは表示されません。 enter image description here

Resharperがコンテキストを見つけることができないのはなぜですか。

答えて

1

ReSharperは、コードビハインドからDataContextを推論しません。あなたはそれを設定すると、ReSharperのはどんなのDataContextに関連するシンボルを解決し、あなたのIntelliSense、ナビゲーションやその他の機能を提供します

<Window x:Class="WpfApplication1.MainWindowView" 
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
    xmlns:wpfApplication1="clr-namespace:WpfApplication1" 
    mc:Ignorable="d" 
    d:DataContext="{d:DesignInstance wpfApplication1:MainWindowViewModel}"> 
</Window> 

:あなたは明示的にこのようなあなたのXAMLでd:DataContext属性とデザイン時のDataContextを設定する必要があります。

関連する問題