2017-12-07 5 views
1

컬렉션의 Itemsource가있는 DataGrid가 있습니다. 이 DataGrid는 기계 축의 일부 값을 보여줍니다. 다른 컬럼이 있는데, 가장 중요한 것은 axisName입니다. 마지막으로 중요한 것은 "ReferenceSetting"버튼입니다.DataGridColumn 변환기로 표시

이 버튼을 누르면 ReferenceSequence가 시작됩니다. 이제 모든 축이 참조를 설정하도록 구성되어 있지는 않습니다.이 버튼은 축소되거나 숨겨져 있어야합니다.

구성된 모든 축이 목록에 저장됩니다.

이제 열의 이름을 단추 열의 visibility 속성에 바인딩하고 변환기에 구성을 확인하는 목록을 제공하려면 어떻게해야합니까?

도와 주셔서 감사합니다.

  <DataGrid Margin="8" Style="{StaticResource CoDeDataGrid}" ItemsSource="{Binding Path=TableDataGridView}" 
             AutoGenerateColumns="False" IsReadOnly="True" Name="AxisGrid"> 
       <DataGrid.Columns> 
        <DataGridTextColumn Binding="{Binding Name}"> 
         <DataGridTextColumn.HeaderTemplate> 
          <DataTemplate> 
           <TextBlock Text="{Binding DataContext.Coordinatesystem, 
            Converter={StaticResource EnumToDisplayTextConverter} , RelativeSource={RelativeSource AncestorType=DataGrid}}"/> 
          </DataTemplate> 
         </DataGridTextColumn.HeaderTemplate> 
        </DataGridTextColumn> 
        ... 
        <DataGridTemplateColumn> 
         <DataGridTemplateColumn.CellTemplate> 
          <DataTemplate> 
          <Button Style="{StaticResource CoDeButtonSmall}" 
            Command="{Binding Path=DataContext.OnSetReferenceCommand, RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}}" 
            CommandParameter="{Binding ElementName=AxisGrid, Path=SelectedItem}"> 
           <!-- Visibility="{Binding Name, Converter={StaticResource ButtonNameToVisibilityConverter}, ConverterParameter={...Property TeachAxis of My ViewModel....}">--> 
           <Image Source="C:\Users\PA\Source\Repos\Source\Common.Resources\ImageResources\TestPicture.jpg" Height="24" Width="24"/> 
          </Button> 
          </DataTemplate> 
         </DataGridTemplateColumn.CellTemplate> 
        </DataGridTemplateColumn> 
      </DataGrid.Columns> 
      </DataGrid> 
+0

물론 일을해야하지만, 당신은 XAML에서 뷰 모델을 정의 않았다 방법을 우리에게 보여해야합니까? 그것은 당신의 DataContext입니까? – Yitzchak

답변

1

이 당신이 할 수있는

<DataGrid Margin="8" Style="{StaticResource CoDeDataGrid}" ItemsSource="{Binding Path=TableDataGridView}" 
      AutoGenerateColumns="False" IsReadOnly="True" Name="AxisGrid"> 
    <DataGrid.Columns> 
     <DataGridTextColumn Binding="{Binding Name}"> 
      <DataGridTextColumn.HeaderTemplate> 
       <DataTemplate> 
        <TextBlock Text="{Binding DataContext.Coordinatesystem, 
         Converter={StaticResource EnumToDisplayTextConverter} , RelativeSource={RelativeSource AncestorType=DataGrid}}"/> 
       </DataTemplate> 
      </DataGridTextColumn.HeaderTemplate> 
     </DataGridTextColumn> 
     ... 
     <DataGridTemplateColumn> 
      <DataGridTemplateColumn.CellTemplate> 
       <DataTemplate> 
        <Button Style="{StaticResource CoDeButtonSmall}" 
         Command="{Binding Path=DataContext.OnSetReferenceCommand, RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}}" 
         CommandParameter="{Binding ElementName=AxisGrid, Path=SelectedItem}" 
         Visibility="{Binding Name, Converter={StaticResource ButtonNameToVisibilityConverter}, ConverterParameter={DataContext.TeachAxis}"> 
         <Image Source="C:\Users\PA\Source\Repos\Source\Common.Resources\ImageResources\TestPicture.jpg" Height="24" Width="24"/> 
        </Button> 
       </DataTemplate> 
      </DataGridTemplateColumn.CellTemplate> 
     </DataGridTemplateColumn> 
    </DataGrid.Columns> 
</DataGrid> 
관련 문제