2012-05-22 4 views
1

Мне нужно иметь DataGrid с несколькими строками и тремя столбцами. Теперь каждая ячейка DataGrid должна показать некоторую информацию (от 6 до 8 параметров) и кнопку. При нажатии этой кнопки отображается всплывающее окно.Можем ли мы иметь сетку внутри ячейки DataGrid в WPF?

Теперь, чтобы отобразить данные внутри ячейки DataGrid, мне нужно правильно их выровнять и подумывать об использовании Grid. Как достичь этого.

Также как узнать, что нажатие кнопки кнопки нажала кнопку мыши?

Просьба помочь.

ответ

5

Вы можете добавить DataGridTemplateColumn (ы) для вашего DataGrid, а затем определить обычный шаблон данных для столбца:

<DataGrid.Columns> 
    <DataGridTemplateColumn Header="Foo" Width="SizeToCells"> 
      <DataGridTemplateColumn.CellTemplate> 
       <DataTemplate> 
        <Grid> 
         ... 
         <Button Command="{Binding SomeCommand}" /> 
        </Grid> 
       </DataTemplate> 
      </DataGridTemplateColumn.CellTemplate> 
    </DataGridTemplateColumn> 
<DataGrid.Columns> 

Теперь о событии мыши. Привяжите сетку к источнику. Каждый элемент в этом источнике должен быть моделью просмотра с любым свойством ICommand. Привяжите это свойство к команде кнопки в шаблоне ячейки, и вы ее получите.

Смежные вопросы